本文整理汇总了PHP中WoW::GetUrlData方法的典型用法代码示例。如果您正苦于以下问题:PHP WoW::GetUrlData方法的具体用法?PHP WoW::GetUrlData怎么用?PHP WoW::GetUrlData使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WoW
的用法示例。
在下文中一共展示了WoW::GetUrlData方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: main
public function main()
{
$url_data = WoW::GetUrlData('discussion');
$blog_id = $url_data['blog_id'];
if (!$blog_id || !WoW_Account::IsLoggedIn()) {
if (isset($_GET['d_ref'])) {
header('Location: ' . $_GET['d_ref']);
} else {
header('Location: ' . WoW::GetWoWPath() . '/');
}
exit;
}
$replyToGuid = 0;
$replyToComment = 0;
$postDetail = isset($_POST['detail']) ? $_POST['detail'] : null;
if (isset($_POST['replyTo'])) {
// have reply
$reply = explode(':', $_POST['replyTo']);
if (is_array($reply) && isset($reply[1])) {
$replyToGuid = $reply[0];
$replyToComment = $reply[1];
}
}
if ($postDetail != null) {
DB::WoW()->query("INSERT INTO `DBPREFIX_blog_comments` (blog_id, account, character_guid, realm_id, postdate, comment_text, answer_to) VALUES (%d, %d, %d, %d, %d, '%s', %d)", $blog_id, WoW_Account::GetUserID(), WoW_Account::GetActiveCharacterInfo('guid'), WoW_Account::GetActiveCharacterInfo('realmId'), time(), $postDetail, $replyToComment);
}
if (isset($_GET['d_ref'])) {
header('Location: ' . $_GET['d_ref']);
} else {
header('Location: ' . WoW::GetWoWPath() . '/');
}
}
示例2: main
public function main()
{
WoW_Template::SetPageData('body_class', sprintf('%s game-index', WoW_Locale::GetLocale(LOCALE_DOUBLE)));
WoW_Template::SetTemplateTheme('wow');
$url_data = WoW::GetUrlData('game');
if (empty($url_data['action1'])) {
WoW_Template::SetPageIndex('game');
WoW_Template::SetPageData('page', 'game');
} elseif ($url_data['action1'] == 'guide') {
switch ($url_data['action2']) {
case 'getting-started':
case 'how-to-play':
case 'playing-together':
case 'late-game':
WoW_Template::SetPageIndex('game_guide_' . str_replace('-', '_', $url_data['action2']));
WoW_Template::SetPageData('body_class', 'game-guide-' . $url_data['action2']);
WoW_Template::SetPageData('page', 'game_guide_' . str_replace('-', '_', $url_data['action2']));
break;
default:
WoW_Template::SetPageIndex('game_guide_what_is_wow');
WoW_Template::SetPageData('body_class', 'game-guide-what-is-wow');
WoW_Template::SetPageData('page', 'game_guide_what_is_wow');
break;
}
} elseif ($url_data['action1'] == 'race') {
$race_id = WoW_Utils::GetRaceIDByKey($url_data['action2']);
if ($race_id > 0) {
WoW_Game::LoadRace($race_id);
WoW_Template::SetPageIndex('game_race');
WoW_Template::SetPageData('body_class', 'race-' . $url_data['action2']);
WoW_Template::SetPageData('race', $url_data['action2']);
WoW_Template::SetPageData('page', 'game_race');
WoW_Template::SetPageData('raceId', $race_id);
} else {
WoW_Template::SetPageIndex('game_race_index');
WoW_Template::SetPageData('body_class', 'game-race-index');
WoW_Template::SetPageData('page', 'game_race_index');
}
} elseif ($url_data['action1'] == 'class') {
$class_id = WoW_Utils::GetClassIDByKey($url_data['action2']);
if ($class_id > 0) {
WoW_Game::LoadClass($class_id);
WoW_Template::SetPageIndex('game_class');
WoW_Template::SetPageData('body_class', 'class-' . $url_data['action2']);
WoW_Template::SetPageData('class', $url_data['action2']);
WoW_Template::SetPageData('classId', $class_id);
WoW_Template::SetPageData('page', 'game_class');
} else {
WoW_Template::SetPageIndex('game_class_index');
WoW_Template::SetPageData('body_class', 'game-classes-index');
WoW_Template::SetPageData('page', 'game_class_index');
}
} else {
WoW_Template::ErrorPage(404);
}
WoW_Template::SetMenuIndex('menu-game');
WoW_Template::LoadTemplate('page_index');
}
示例3: main
public function main()
{
$url_data = WoW::GetUrlData('management');
if (!is_array($url_data) || !isset($url_data['action1']) || $url_data['action1'] != 'management') {
header('Location: ' . WoW::GetWoWPath() . '/account/management/');
exit;
}
if (!WoW_Account::IsLoggedIn()) {
header('Location: ' . WoW::GetWoWPath() . '/login/');
exit;
}
WoW_Template::SetTemplateTheme('account');
WoW_Account::UserGames();
WoW_Template::SetPageIndex('management');
WoW_Template::SetMenuIndex('management');
WoW_Template::SetPageData('page', 'management');
if ($url_data['action2'] == 'wow' && preg_match('/dashboard.html/i', $url_data['action3'])) {
WoW_Account::InitializeAccount($_GET['accountName']);
WoW_Template::SetPageIndex('dashboard');
WoW_Template::SetMenuIndex('games');
WoW_Template::SetPageData('page', 'dashboard');
} elseif ($url_data['action2'] == 'wow-account-conversion.html') {
WoW_Template::SetPageData('conversion_page', 1);
if (isset($_POST['targetpage'])) {
switch ($_POST['targetpage']) {
case '2':
if (isset($_POST['username']) && isset($_POST['password'])) {
if (WoW_Account::PerformConversionStep(1, array('username' => $_POST['username'], 'password' => $_POST['password']))) {
WoW_Template::SetPageData('conversion_page', 2);
} else {
WoW_Template::SetPageData('conversion_page', 1);
}
} else {
WoW_Template::SetPageData('conversion_page', 1);
}
break;
case '3':
WoW_Template::SetPageData('conversion_page', 3);
break;
case 'finish':
if (!WoW_Account::PerformConversionStep(3)) {
WoW_Template::SetPageData('conversion_page', 2);
}
break;
default:
break;
}
}
WoW_Template::SetPageIndex('account_conversion');
Wow_Template::SetMenuIndex('games');
WoW_Template::SetPageData('page', 'account_conversion');
}
WoW_Template::LoadTemplate('page_index');
}
示例4: main
public function main()
{
WoW_Template::SetPageData('body_class', sprintf('%s media-content', WoW_Locale::GetLocale(LOCALE_DOUBLE)));
WoW_Template::SetTemplateTheme('wow');
$url_data = WoW::GetUrlData('media');
if (empty($url_data['action1'])) {
WoW_Template::SetPageIndex('media');
WoW_Template::SetPageData('page', 'media');
} else {
WoW_Template::ErrorPage(404);
}
WoW_Template::SetMenuIndex('menu-media');
WoW_Template::LoadTemplate('page_index');
}
示例5: main
public function main()
{
WoW_Template::SetPageData('body_class', WoW_Locale::GetLocale(LOCALE_DOUBLE));
WoW_Template::SetTemplateTheme('wow');
$url_data = WoW::GetUrlData('guild');
$guild_error = false;
if (!$url_data) {
WoW_Template::ErrorPage(404);
} elseif (!WoW_Guild::LoadGuild($url_data['name'], WoW_Utils::GetRealmIDByName($url_data['realmName']))) {
WoW_Template::ErrorPage(404);
} else {
$primary = WoW_Account::GetActiveCharacter();
WoW_Template::SetPageData('guild-authorized', false);
if (is_array($primary) && isset($primary['realmName'])) {
if ($primary['realmName'] == WoW_Guild::GetGuildRealmName() && $primary['guildId'] == WoW_Guild::GetGuildID()) {
WoW_Template::SetPageData('guild-authorized', true);
}
}
switch ($url_data['action0']) {
default:
WoW_Template::SetPageData('guild-page', 'summary');
WoW_Template::SetPageIndex('guild_page');
WoW_Template::SetPageData('page', 'guild_page');
break;
case 'perk':
WoW_Template::SetPageData('guild-page', 'perks');
WoW_Template::SetPageIndex('guild_perks');
WoW_Template::SetPageData('page', 'guild_perks');
break;
case 'roster':
switch ($url_data['action1']) {
default:
WoW_Template::SetPageIndex('guild_roster');
WoW_Template::SetPageData('page', 'guild_roster');
break;
case 'professions':
WoW_Guild::InitProfessions();
WoW_Template::SetPageIndex('guild_professions');
WoW_Template::SetPageData('page', 'guild_professions');
break;
}
WoW_Template::SetPageData('guild-page', 'roster');
break;
}
WoW_Template::SetPageData('guildName', $url_data['name']);
WoW_Template::SetPageData('realmName', $url_data['realmName']);
WoW_Template::SetMenuIndex('menu-game');
}
WoW_Template::LoadTemplate('page_index');
}
示例6: main
public function main()
{
WoW_Template::SetTemplateTheme('wow');
WoW_Template::SetPageData('body_class', WoW_Locale::GetLocale(LOCALE_DOUBLE));
$url_data = WoW::GetUrlData('blog');
$blog_id = $url_data['blog_id'];
if (!$blog_id || !WoW::LoadBlog($blog_id)) {
WoW_Template::ErrorPage(404);
} else {
WoW_Template::SetPageData('wow_news', WoW::GetLastNews());
WoW_Template::SetPageData('blog_title', WoW::GetBlogData('title'));
WoW_Template::SetPageData('overall_meta_title', WoW::GetBlogData('title'));
WoW_Template::SetPageData('overall_meta_img', '/cms/blog_thumbnail/' . WoW::GetBlogData('image'));
WoW_Template::SetPageIndex('blog');
WoW_Template::SetPageData('page', 'blog');
}
WoW_Template::SetMenuIndex('menu-home');
WoW_Template::LoadTemplate('page_index');
}
示例7: main
public function main()
{
WoW_Template::SetPageData('body_class', sprintf('%s zone-index expansion-3', WoW_Locale::GetLocale(LOCALE_DOUBLE)));
WoW_Template::SetTemplateTheme('wow');
WoW_Template::SetPageIndex('zones');
WoW_Template::SetPageData('page', 'zones');
$url_data = WoW::GetUrlData('zone');
if (isset($url_data['action3'])) {
exit;
}
if (isset($url_data['action1']) && $url_data['action1'] != null) {
// Try to find zone
if (WoW_Game::IsZone($url_data['action1'])) {
WoW_Template::SetPageData('zoneKey', $url_data['action1']);
if (isset($url_data['action2']) && $url_data['action2'] != null) {
if (in_array($url_data['action2'], array('loot', 'quests', 'quest-rewards', 'achievements', 'comments'))) {
die('NYI');
}
if (WoW_Game::IsBoss($url_data['action2'])) {
WoW_Template::SetPageIndex('boss');
WoW_Template::SetPageData('page', 'boss');
WoW_Template::SetPageData('bossKey', $url_data['action2']);
WoW_Game::LoadBoss($url_data['action2']);
// save in memory
WoW_Template::SetPageData('body_class', sprintf('%s zone-%s boss-%s', WoW_Locale::GetLocale(LOCALE_DOUBLE), $url_data['action1'], $url_data['action2']));
}
} else {
WoW_Template::SetPageIndex('zone');
WoW_Template::SetPageData('page', 'zone');
WoW_Game::LoadZone($url_data['action1']);
// save in memory
WoW_Template::SetPageData('body_class', sprintf('%s zone-%s', WoW_Locale::GetLocale(LOCALE_DOUBLE), $url_data['action1']));
}
}
}
WoW_Template::SetMenuIndex('menu-game');
WoW_Template::LoadTemplate('page_index');
}
示例8: main
public function main()
{
WoW_Template::SetPageData('body_class', sprintf('%s faction-index expansion-3', WoW_Locale::GetLocale(LOCALE_DOUBLE)));
WoW_Template::SetTemplateTheme('wow');
WoW_Template::SetPageIndex('faction');
WoW_Template::SetPageData('page', 'faction');
$url_data = WoW::GetUrlData('faction');
if (isset($url_data['action2']) && $url_data['action2'] != null) {
exit;
// [PH]
}
if (isset($url_data['action1']) && $url_data['action1'] != null) {
// Try to find zone
if (WoW_Game::IsZone($url_data['action1'])) {
WoW_Template::SetPageIndex('zone');
WoW_Template::SetPageData('page', 'zone');
WoW_Game::LoadZone($url_data['action1']);
// save in memory
}
}
WoW_Template::SetMenuIndex('menu-game');
WoW_Template::LoadTemplate('page_index');
}
示例9: main
public function main()
{
WoW_Template::SetTemplateTheme('wow');
WoW_Template::SetPageData('body_class', WoW_Locale::GetLocale(LOCALE_DOUBLE));
WoW_Template::SetMenuIndex('menu-forums');
$url_data = WoW::GetUrlData('forum');
$page = isset($_GET['page']) && preg_match('/([0-9]+)/i', $_GET['page']) ? $_GET['page'] : 1;
WoW_Template::SetPageData('current_page', $page);
// Clear category/thread values
WoW_Forums::SetCategoryId(0);
WoW_Forums::SetThreadId(0);
// Check preview
if (isset($url_data['action4'], $url_data['action5'], $url_data['action6']) && $url_data['action4'] . $url_data['action5'] . $url_data['action6'] == 'topicpostpreview') {
$post_text = isset($_POST['post']) ? $_POST['post'] : null;
if ($post_text == null) {
//This can not be here, it causes error when preview blank post text
//WoW_Template::ErrorPage(500);
}
// Convert BB codes to HTML
WoW_Forums::BBCodesToHTML($post_text);
// Output json
header('Content-type: text/json');
echo '{"detail":"' . $post_text . '"}';
exit;
}
// Set values (if any)
if ($url_data['category_id'] > 0) {
if (!WoW_Forums::SetCategoryId($url_data['category_id'])) {
WoW_Template::ErrorPage(404);
exit;
}
if (isset($url_data['action5']) && $url_data['action5'] == 'topic' && WoW_Account::IsHaveActiveCharacter()) {
// Check $_POST query
if (isset($_POST['xstoken'])) {
$post_allowed = true;
$required_post_fields = array('xstoken', 'sessionPersist', 'subject', 'postCommand_detail');
foreach ($required_post_fields as $field) {
if (!isset($_POST[$field])) {
$post_allowed = false;
}
}
if ($post_allowed) {
$post_info = WoW_Forums::AddNewThread($url_data['category_id'], $_POST, false);
if (is_array($post_info)) {
header('Location: ' . WoW::GetWoWPath() . '/wow/' . WoW_Locale::GetLocale() . '/forum/topic/' . $post_info['thread_id']);
exit;
}
}
}
// Topic create
WoW_Template::SetPageIndex('forum_new_topic');
WoW_Template::SetPageData('page', 'forum_new_topic');
} else {
WoW_Template::SetPageIndex('forum_category');
WoW_Template::SetPageData('page', 'forum_category');
}
} elseif ($url_data['thread_id'] > 0) {
if (!WoW_Forums::SetThreadId($url_data['thread_id'])) {
WoW_Template::ErrorPage(404);
exit;
}
if (isset($url_data['action4']) && $url_data['action4'] == 'topic' && preg_match('/([0-9]+)/i', $url_data['action5']) && WoW_Account::IsHaveActiveCharacter()) {
// Check $_POST query
if (isset($_POST['xstoken'])) {
$post_allowed = true;
$required_post_fields = array('xstoken', 'sessionPersist', 'detail');
foreach ($required_post_fields as $field) {
if (!isset($_POST[$field])) {
$post_allowed = false;
}
}
if ($post_allowed) {
$post_info = WoW_Forums::AddNewPost(null, $url_data['thread_id'], $_POST);
if (is_array($post_info)) {
header('Location: ' . WoW::GetWoWPath() . '/wow/' . WoW_Locale::GetLocale() . '/forum/topic/' . $url_data['thread_id']);
exit;
}
}
}
}
WoW_Template::SetPageIndex('forum_thread');
WoW_Template::SetPageData('page', 'forum_thread');
} elseif (isset($url_data['action4']) && $url_data['action4'] == 'topic' && isset($url_data['action5']) && $url_data['action5'] == 'post' && isset($url_data['action6']) && preg_match('/([0-9]+)/i', $url_data['action6'])) {
if (isset($url_data['action7']) && WoW_Account::IsHaveActiveCharacter()) {
switch ($url_data['action7']) {
case 'frag':
$Quote = WoW_Forums::QuotePost($url_data['action6']);
header('Content-type: text/json');
echo '{"detail":"' . $Quote['message'] . '","name":"' . $Quote['name'] . '"}';
exit;
break;
case 'edit':
if (isset($_POST['xstoken'])) {
$post_allowed = true;
$required_post_fields = array('xstoken', 'sessionPersist', 'postCommand_detail');
foreach ($required_post_fields as $field) {
if (!isset($_POST[$field])) {
$post_allowed = false;
}
}
//.........这里部分代码省略.........
示例10: main
public function main()
{
$url_data = WoW::GetUrlData('vault');
// Check session
if ($url_data['action0'] != 'vault') {
// Wrong URL parsing
header('Location: ' . WoW::GetWoWPath() . '/wow/');
exit;
}
if (!WoW_Account::IsLoggedIn()) {
header('Location: ' . WoW::GetWoWPath() . '/login/?ref=' . urlencode($_SERVER['REQUEST_URI']));
exit;
}
WoW_Template::SetTemplateTheme('wow');
switch ($url_data['action1']) {
case 'character':
switch ($url_data['action2']) {
case 'auction':
$auction_side = $url_data['action3'];
if (!$auction_side || !in_array($auction_side, array('alliance', 'horde', 'neutral'))) {
WoW::RedirectTo('wow/' . WoW_Locale::GetLocale() . '/vault/character/auction/' . WoW_Account::GetActiveCharacterInfo('faction_text'));
}
// Check active character
if (WoW_Account::GetActiveCharacterInfo('guid') == 0) {
WoW::RedirectTo();
}
switch ($url_data['action4']) {
default:
WoW_Template::SetPageData('auction_side', $auction_side);
WoW_Template::SetPageIndex('auction_lots');
WoW_Template::SetPageData('page', 'auction_lots');
break;
case 'cancel':
// Cancelling, adding, etc. requires core support!
if (!isset($_POST['auc'])) {
exit;
}
$auction_id = (int) $_POST['auc'];
header('Content-type: text/plain');
echo WoW_Auction::CancelAuction($auction_id);
exit;
/*
if(isset($_POST['auc'])) {
$auction_id = (int) $_POST['auc'];
// WoW REMOTE FEATURE
}
file_put_contents('cancel.txt', print_r($_POST, true));
exit;
*/
break;
}
break;
default:
WoW_Template::ErrorPage(404);
break;
}
break;
default:
WoW_Template::ErrorPage(404);
break;
}
WoW_Template::LoadTemplate('page_index');
}
示例11: main
public function main()
{
WoW_Template::SetTemplateTheme('wow');
WoW_Template::SetPageIndex('item_info');
WoW_Template::SetPageData('page', 'item_info');
WoW_Template::SetMenuIndex('menu-game');
$url_data = WoW::GetUrlData('item');
if (!$url_data) {
if (!isset($_GET['t'])) {
WoW_Template::ErrorPage(404);
}
exit;
}
$item_entry = $url_data['item_entry'];
if ($item_entry == 0) {
$breadcrumbs = WoW_Items::GetBreadCrumbsForItem($_GET);
WoW_Template::SetPageIndex('item_list');
WoW_Template::SetPageData('body_class', 'item-index');
WoW_Template::SetPageData('page', 'item_list');
WoW_Template::SetPageData('breadcrumbs', $breadcrumbs);
WoW_Template::SetPageData('last-crumb', is_array($breadcrumbs) ? $breadcrumbs[sizeof($breadcrumbs) - 1]['caption'] : WoW_Locale::GetString('template_menu_items'));
WoW_Template::LoadTemplate('page_index');
exit;
}
// Load proto
$proto = new WoW_ItemPrototype();
$proto->LoadItem($item_entry);
if (!$proto->IsCorrect()) {
if (!isset($_GET['t']) && (!isset($url_data['action0']) || $url_data['action0'] != 'tooltip')) {
WoW_Template::ErrorPage(404);
}
exit;
}
WoW_Template::SetPageData('item_entry', $item_entry);
// SSD and SSV data
$ssd = DB::WoW()->selectRow("SELECT * FROM `DBPREFIX_ssd` WHERE `entry` = %d", $proto->ScalingStatDistribution);
$ssd_level = MAX_PLAYER_LEVEL;
if (isset($_GET['pl'])) {
$ssd_level = (int) $_GET['pl'];
if (is_array($ssd) && $ssd_level > $ssd['MaxLevel']) {
$ssd_level = $ssd['MaxLevel'];
}
}
$ssv = DB::WoW()->selectRow("SELECT * FROM `DBPREFIX_ssv` WHERE `level` = %d", $ssd_level);
if (isset($_GET['t'])) {
$url_data['tooltip'] = true;
}
if ($url_data['tooltip'] == true) {
WoW_Template::SetPageIndex('item_tooltip');
WoW_Template::SetPageData('tooltip', true);
WoW_Template::SetPageData('page', 'item_tooltip');
WoW_Template::SetPageData('proto', $proto);
WoW_Template::SetPageData('ssd', $ssd);
WoW_Template::SetPageData('ssd_level', $ssd_level);
WoW_Template::SetPageData('ssv', $ssv);
WoW_Template::LoadTemplate('page_item_tooltip');
} else {
if (isset($url_data['action0']) && $url_data['action0'] != null) {
WoW_Template::SetPageData('tab_type', $url_data['action0']);
WoW_Template::LoadTemplate('page_item_tab');
exit;
}
WoW_Template::SetPageIndex('item');
WoW_Template::SetPageData('tooltip', false);
WoW_Template::SetPageData('itemName', $proto->name);
WoW_Template::SetPageData('page', 'item');
WoW_Template::SetPageData('proto', $proto);
WoW_Template::SetPageData('ssd', $ssd);
WoW_Template::SetPageData('ssd_level', $ssd_level);
WoW_Template::SetPageData('ssv', $ssv);
WoW_Template::LoadTemplate('page_index');
}
unset($proto);
}
示例12: main
public function main()
{
WoW_Template::SetPageData('body_class', WoW_Locale::GetLocale(LOCALE_DOUBLE));
WoW_Template::SetTemplateTheme('wow');
$url_data = WoW::GetUrlData('character');
if (!$url_data) {
WoW_Template::SetPageIndex('404');
WoW_Template::SetPageData('page', '404');
WoW_Template::SetPageData('errorProfile', 'template_404');
} else {
if ($url_data['action0'] == 'advanced') {
// Set "wow.character.summary.view" cookie as "advanced"
setcookie('wow.character.summary.view', 'advanced', strtotime('NEXT YEAR'), '/' . WoW::GetWoWPath() . '/character/');
} elseif ($url_data['action0'] == null && (isset($url_data['name']) && isset($url_data['realmName']))) {
WoW::RedirectToCorrectProfilePage('simple');
//change to WoW::RedirectTo()?
} elseif ($url_data['action0'] == 'simple') {
// Set "wow.character.summary.view" cookie as "simple"
setcookie('wow.character.summary.view', 'simple', strtotime('NEXT YEAR'), '/' . WoW::GetWoWPath() . '/character/');
}
$load_result = WoW_Characters::LoadCharacter($url_data['name'], WoW_Utils::GetRealmIDByName($url_data['realmName']), true, true);
if (!WoW_Characters::IsCorrect() || $load_result != 3) {
if ($url_data['action0'] == 'tooltip') {
exit;
}
if ($load_result == 2) {
WoW_Template::SetPageData('errorProfile', 'template_lowlevel');
} else {
WoW_Template::SetPageData('errorProfile', 'template_404');
}
WoW_Template::SetPageIndex('404');
WoW_Template::SetPageData('page', '404');
} else {
WoW_Achievements::Initialize();
WoW_Template::SetPageData('characterName', WoW_Characters::GetName());
WoW_Template::SetPageData('characterRealmName', WoW_Characters::GetRealmName());
switch ($url_data['action0']) {
default:
WoW_Template::SetPageIndex('character_profile_simple');
WoW_Template::SetPageData('page', 'character_profile');
WoW_Characters::CalculateStats(true);
break;
case 'advanced':
WoW_Template::SetPageIndex('character_profile_advanced');
WoW_Template::SetPageData('page', 'character_profile');
WoW_Characters::CalculateStats(true);
break;
/*
case 'talent':
WoW_Template::SetPageIndex('character_talents');
WoW_Template::SetPageData('page', 'character_talents');
WoW_Template::SetPageData('talents', 'primary');
if($url_data['action1'] == 'secondary') {
WoW_Template::SetPageData('talents', 'secondary');
}
break;
*/
/*
case 'talent':
WoW_Template::SetPageIndex('character_talents');
WoW_Template::SetPageData('page', 'character_talents');
WoW_Template::SetPageData('talents', 'primary');
if($url_data['action1'] == 'secondary') {
WoW_Template::SetPageData('talents', 'secondary');
}
break;
*/
case 'tooltip':
WoW_Template::LoadTemplate('page_character_tooltip');
exit;
break;
case 'achievement':
for ($i = 2; $i > 0; $i--) {
if (isset($url_data['action' . $i]) && $url_data['action' . $i] != null) {
WoW_Achievements::SetCategoryForTemplate($url_data['action' . $i]);
WoW_Template::LoadTemplate('page_character_achievements');
exit;
}
}
WoW_Template::SetPageIndex('character_achievements');
WoW_Template::SetPageData('page', 'character_achievements');
break;
case 'reputation':
if (isset($url_data['action1']) && $url_data['action1'] == 'tabular') {
WoW_Template::SetPageIndex('character_reputation_tabular');
} else {
WoW_Template::SetPageIndex('character_reputation');
}
WoW_Template::SetPageData('page', 'character_reputation');
WoW_Reputation::InitReputation(WoW_Characters::GetGUID());
break;
case 'pvp':
WoW_Template::SetPageIndex('character_pvp');
WoW_Template::SetPageData('page', 'character_pvp');
WoW_Characters::InitPvP();
break;
case 'statistic':
for ($i = 2; $i > 0; $i--) {
if (isset($url_data['action' . $i]) && $url_data['action' . $i] != null) {
WoW_Achievements::SetCategoryForTemplate($url_data['action' . $i]);
//.........这里部分代码省略.........
示例13: main
public function main()
{
$url_data = WoW::GetUrlData('management');
if (!is_array($url_data) || !isset($url_data['action1']) || $url_data['action1'] != 'creation') {
header('Location: ' . WoW::GetWoWPath() . '/account/creation/tos.html');
exit;
}
WoW_Template::SetTemplateTheme('account');
if ($url_data['action2'] == 'wow' && $url_data['action3'] == 'signup') {
if (!WoW_Account::IsLoggedIn()) {
header('Location: ' . WoW::GetWoWPath() . '/login/?ref=' . urlencode('http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']));
exit;
}
if (isset($_POST['emailAddress'])) {
$account_data = array('username' => $_POST['emailAddress'], 'sha' => sha1(strtoupper($_POST['emailAddress']) . ':' . strtoupper($_POST['password'])));
if (WoW_Account::RegisterGameAccount($account_data)) {
header('Location: ' . WoW::GetWoWPath() . '/account/management/wow/dashboard.html?accountName=' . $account_data['username']);
exit;
}
}
WoW_Template::LoadTemplate('creation_wow');
exit;
}
if (preg_match('/tos.html/i', $url_data['action2'])) {
WoW_Template::SetPageIndex('creation_tos');
WoW_Template::SetPageData('page', 'creation_tos');
if (isset($_POST['csrftoken'])) {
$registration_allowed = true;
$required_post_fields = array('firstname', 'lastname', array('emailAddress', 'emailAddressConfirmation'), array('password', 'rePassword'), 'gender', 'question1', 'answer1', 'dobDay', 'dobMonth', 'dobYear', 'country');
// Check POST fields
foreach ($required_post_fields as $field) {
if (is_array($field)) {
if (!isset($_POST[$field[0]], $_POST[$field[1]])) {
$registration_allowed = false;
WoW_Template::SetPageData('account_creation_error_msg', WoW_Locale::GetString('template_account_creation_error_fields'));
}
if ($_POST[$field[0]] != $_POST[$field[1]] || empty($_POST[$field[0]]) || empty($_POST[$field[1]])) {
$registration_allowed = false;
WoW_Template::SetPageData('account_creation_error_msg', WoW_Locale::GetString('template_account_creation_error_fields'));
}
} else {
if (!isset($_POST[$field]) || $_POST[$field] == null) {
$registration_allowed = false;
WoW_Template::SetPageData('account_creation_error_msg', WoW_Locale::GetString('template_account_creation_error_fields'));
}
}
}
if ($registration_allowed) {
// Generate user data
$user_data = array('first_name' => $_POST['firstname'], 'last_name' => $_POST['lastname'], 'password' => $_POST['password'], 'sha' => sha1(strtoupper($_POST['emailAddress']) . ':' . strtoupper($_POST['password'])), 'treatment' => $_POST['gender'], 'email' => $_POST['emailAddress'], 'question_id' => $_POST['question1'], 'question_answer' => $_POST['answer1'], 'birthdate' => strtotime(sprintf('%d.%d.%d', $_POST['dobDay'], $_POST['dobMonth'], $_POST['dobYear'])), 'country_code' => $_POST['country']);
// And try to register new account
if (WoW_Account::RegisterUser($user_data, true)) {
// Account created, redirect user to manager index
header('Location: ' . WoW::GetWoWPath() . '/account/management/');
exit;
}
} else {
WoW_Template::SetPageData('creation_error', true);
}
}
}
WoW_Template::LoadTemplate('creation_index');
}
示例14: main
public function main()
{
$url_data = WoW::GetUrlData('management');
if (!is_array($url_data) || !isset($url_data['action1'])) {
header('Location: ' . WoW::GetWoWPath() . '/account/management/');
exit;
}
if ($url_data['action1'] == 'creation') {
include CONTROLLERS_DIR . 'account' . DS . 'creation.php';
$controller = new Creation($this->m_actions, 'account');
$controller->main();
exit;
}
if (!WoW_Account::IsLoggedIn()) {
if ($url_data['action1'] == 'support') {
WoW_Template::SetTemplateTheme('account');
switch ($url_data['action2']) {
default:
case 'password-reset.html':
WoW_Template::SetPageIndex('password_reset');
WoW_Template::SetPageData('page', 'password_reset');
break;
case 'password-reset-select.html':
if (isset($_POST['csrftoken'])) {
$user_data = array('email' => $_POST['email'], 'username' => $_POST['firstName']);
WoW_Account::DropLastErrorCode();
if (WoW_Account::RecoverPasswordSelect($user_data)) {
$_SESSION['wow_password_recovery'] = WoW_Account::GetRecoverPasswordData();
WoW_Template::SetPageIndex('password_reset_select');
WoW_Template::SetPageData('page', 'password_reset_select');
} else {
WoW_Account::SetLastErrorCode(ERORR_INVALID_PASSWORD_RECOVERY_COMBINATION);
WoW_Template::SetPageIndex('password_reset');
WoW_Template::SetPageData('page', 'password_reset');
}
}
break;
case 'password-reset-secred-answer.html':
WoW_Account::SetRecoverPasswordData($_SESSION['wow_password_recovery']);
if (isset($_POST['verificationMethod']) && $_POST['verificationMethod'] == 'SECURITY_QUESTION') {
WoW_Template::SetPageIndex('password_reset_secred_answer');
WoW_Template::SetPageData('page', 'password_reset_secred_answer');
} else {
WoW_Template::SetPageIndex('password_reset_select');
WoW_Template::SetPageData('page', 'password_reset_select');
}
break;
case 'password-reset-success.html':
WoW_Account::SetRecoverPasswordData($_SESSION['wow_password_recovery']);
if (isset($_POST['secretAnswer'])) {
WoW_Account::DropLastErrorCode();
if (WoW_Account::RecoverPasswordSuccess($_POST['secretAnswer'])) {
WoW_Template::SetPageIndex('password_reset_success');
WoW_Template::SetPageData('page', 'password_reset_success');
} else {
WoW_Account::SetLastErrorCode(ERORR_INVALID_PASSWORD_RECOVERY_ANSWER);
WoW_Template::SetPageIndex('password_reset_secred_answer');
WoW_Template::SetPageData('page', 'password_reset_secred_answer');
}
}
break;
case 'password-reset-confirm.xml':
if (isset($_POST['email']) && isset($_POST['ticket'])) {
$data = array('newPassword' => $_POST['newPassword'], 'reNewPassword' => $_POST['reNewPassword']);
WoW_Account::DropLastErrorCode();
if ($data['newPassword'] != $data['reNewPassword']) {
WoW_Account::SetLastErrorCode(ERORR_NEW_PASSWORD_NOT_MATCH);
WoW_Template::SetPageIndex('password_reset_confirm');
WoW_Template::SetPageData('page', 'password_reset_confirm');
} elseif (WoW_Account::RecoverPasswordChange($data['newPassword'])) {
WoW_Template::SetPageIndex('password_reset_changed');
WoW_Template::SetPageData('page', 'password_reset_confirm');
} else {
WoW_Account::SetLastErrorCode(ERORR_NEW_PASSWORD_FAIL);
WoW_Template::SetPageIndex('password_reset_confirm');
WoW_Template::SetPageData('page', 'password_reset_confirm');
}
}
break;
}
if (preg_match('/password-reset-confirm.xml\\?ticket=([a-z0-9A-Z]{32})$/i', $url_data['action2'], $matches)) {
if (WoW_Account::validTicket($matches[1])) {
WoW_Template::SetPageIndex('password_reset_confirm');
WoW_Template::SetPageData('page', 'password_reset_confirm');
}
}
WoW_Template::LoadTemplate('support_index');
exit;
} else {
header('Location: ' . WoW::GetWoWPath() . '/login/');
exit;
}
}
WoW_Template::SetTemplateTheme('account');
WoW_Account::UserGames();
WoW_Template::SetPageIndex('management');
WoW_Template::SetMenuIndex('management');
WoW_Template::SetPageData('page', 'management');
if ($url_data['action2'] == 'wow' && preg_match('/dashboard.html/i', $url_data['action3'])) {
WoW_Account::InitializeAccount($_GET['accountName']);
//.........这里部分代码省略.........
示例15: NavigationMenu
public static function NavigationMenu()
{
// Maybe breadcrumb content should be filled from appropriate page controller? // Shadez
$navigationMenu[0] = WoW_Locale::$navigation;
$url_data = WoW::GetUrlData();
$path_data = NULL;
$path_search_data = NULL;
$last = false;
$dynamic_content = false;
switch ($url_data[1]) {
case '/zone/':
$dynamic_content = true;
@($zone_info = WoW_Game::GetZone());
$_data = array(0 => '/', 1 => '/game/', 2 => '/zone/', 3 => '/zone/#expansion=' . @$zone_info['expansion'] . '&type=' . @$zone_info['type'] . 's', 4 => '/zone/' . @$url_data[2], 5 => '/zone/' . @$url_data[2] . '/' . @$url_data[3]);
for ($a = 0; $a <= count($url_data); ++$a) {
$path_search_data[$a] = $_data[$a];
}
if (isset($url_data[2])) {
$path_search_data[4] = $_data[4];
}
break;
case '/faction/':
$dynamic_content = true;
/**
* WoW_Game::GetFaction() is not defined
*
* TODO
* Create function WoW_Game::GetFaction() with same rules as WoW_Game::GetZone()
* and edit wow_content_faction.php template to load datas from DB same as wow_content_zones.php template
*
* Create template and DB data to load and display each faction details.
*/
//@$faction_info = WoW_Game::GetFaction();
$_data = array(0 => '/', 1 => '/game/', 2 => '/faction/', 3 => '/faction/#expansion=' . @$faction_info['expansion'], 4 => '/faction/' . @$url_data[2]);
for ($a = 0; $a <= count($url_data); ++$a) {
$path_search_data[$a] = $_data[$a];
}
if (isset($url_data[2])) {
$path_search_data[4] = $_data[4];
}
break;
case '/item/':
$dynamic_content = true;
//WoW_Items::GetBreadCrumbsForItem($_GET) is NOT needed now
if (isset($url_data[2])) {
$preg = preg_match('/\\/(\\?classId=([0-9]+)((&subClassId=([0-9]+))?(&invType=([0-9]+))?)?)|([0-9]+)\\/{0,1}/i', $url_data[2], $matches);
}
$_data = array(0 => '/', 1 => '/game/', 2 => '/item/', 3 => NULL, 4 => NULL, 5 => NULL);
for ($a = 0; $a <= count($url_data); ++$a) {
$path_search_data[$a] = $_data[$a];
}
if (isset($matches) && array_key_exists(8, $matches)) {
$proto = new WoW_ItemPrototype();
$proto->LoadItem($matches[8]);
$matches[2] = $proto->class;
$matches[5] = $proto->subclass;
if ($matches[2] == 4 && in_array($matches[5], array(0, 1, 2, 3, 4))) {
$matches[7] = $proto->InventoryType;
$path_search_data[6] = '/item/' . $matches[8];
$label[6] = $proto->name;
} else {
unset($matches[7]);
$path_search_data[5] = '/item/' . $matches[8];
$label[5] = $proto->name;
}
}
if (isset($matches) && (array_key_exists(2, $matches) || array_key_exists(8, $matches))) {
$path_search_data[3] = '/item/?classId=' . $matches[2];
}
if (isset($matches) && (array_key_exists(5, $matches) || array_key_exists(8, $matches))) {
$path_search_data[4] = '/item/?classId=' . $matches[2] . '&subClassId=' . $matches[5];
}
if (isset($matches) && array_key_exists(7, $matches)) {
$path_search_data[5] = '/item/?classId=' . $matches[2] . '&subClassId=' . $matches[5] . '&invType=' . $matches[7];
}
break;
case '/profession/':
$dynamic_content = true;
$_data = array(0 => '/', 1 => '/game/', 2 => '/profession/', 3 => '/profession/' . @$url_data[2]);
for ($a = 0; $a <= count($url_data); ++$a) {
$path_search_data[$a] = $_data[$a];
}
break;
case '/pvp/':
$dynamic_content = true;
$_data = array(0 => '/', 1 => '/game/', 2 => '/pvp/', 3 => '/pvp/' . @$url_data[2]);
for ($a = 0; $a <= count($url_data); ++$a) {
$path_search_data[$a] = $_data[$a];
}
break;
case '/status/':
$dynamic_content = true;
$_data = array(0 => '/', 1 => '/game/', 2 => '/status/', 3 => '/status/' . @$url_data[2]);
for ($a = 0; $a <= count($url_data); ++$a) {
$path_search_data[$a] = $_data[$a];
}
break;
case '/character/':
$dynamic_content = true;
$subdata4 = '';
//.........这里部分代码省略.........