public static function PerformSearch($Query) { $FoundTotal = 0; $GuildsFound = 0; $CharactersFound = 0; $ArticlesFound = 0; $ItemsFound = 0; $GuildsArray = array(); $CharactersArray = array(); $ArticlesArray = array(); $ItemsArray = array(); $SearchForGuild = Search::SearchForGuild($Query); $SearchForCharacter = Search::SearchForCharacter($Query); $SearchForArticles = Search::SearchForArticles($Query); $SearchForItems = Search::SearchForItems($Query); if (!empty($SearchForGuild)) { $FoundTotal = $FoundTotal + count($SearchForGuild); $GuildsFound = count($SearchForGuild); foreach ($SearchForGuild as $Guild) { $GuildData = Characters::GetGuildData($Guild['name']); $GuildsArray[] = array('guid' => $GuildData['guildid'], 'name' => $GuildData['name'], 'side' => $GuildData['side']['name'], 'side_translation' => $GuildData['side']['translation'], 'BackgroundColor' => $GuildData['BackgroundColor'], 'BorderStyle' => $GuildData['BorderStyle'], 'BorderColor' => $GuildData['BorderColor'], 'EmblemStyle' => $GuildData['EmblemStyle'], 'EmblemColor' => $GuildData['EmblemColor']); } } if (!empty($SearchForCharacter)) { $FoundTotal = $FoundTotal + count($SearchForCharacter); $CharactersFound = count($SearchForCharacter); foreach ($SearchForCharacter as $Character) { $CharacterData = Characters::GetCharacterData($Character['name']); $CharactersArray[] = array('name' => $CharacterData['name'], 'class' => $CharacterData['class'], 'race' => $CharacterData['race'], 'gender' => $CharacterData['gender'], 'class_name' => $CharacterData['class_data']['translation'], 'race_name' => $CharacterData['race_data']['translation'], 'level' => $CharacterData['level'], 'online' => $CharacterData['online'], 'guild' => $CharacterData['guild_name'], 'side' => $CharacterData['side_id'], 'sidetranslation' => $CharacterData['side_translation']); } } if (!empty($SearchForArticles)) { $FoundTotal = $FoundTotal + count($SearchForArticles); $ArticlesFound = count($SearchForArticles); foreach ($SearchForArticles as $Article) { $ArticleData = News::GetArticle($Article['id']); $ArticlesArray[] = array('id' => $ArticleData['id'], 'miniature' => $ArticleData['post_miniature'], 'title' => $ArticleData['title'], 'comments' => $ArticleData['comments_count']); } } if (!empty($SearchForItems)) { $FoundTotal = $FoundTotal + count($SearchForItems); $ItemsFound = count($SearchForItems); foreach ($SearchForItems as $Item) { $ItemsArray[] = array('id' => $Item['entry'], 'name' => $Item['name'], 'Quality' => $Item['Quality'], 'ItemLevel' => $Item['ItemLevel'], 'RequiredLevel' => $Item['RequiredLevel'], 'Class' => $Item['class']['translation'], 'Subclass' => $Item['subclass']['translation'], 'icon' => $Item['icon']); } } $SearchResult = array('foundtotal' => $FoundTotal, 'guildsfound' => $GuildsFound, 'charactersfound' => $CharactersFound, 'articlesfound' => $ArticlesFound, 'itemsfound' => $ItemsFound, 'guilds' => $GuildsArray, 'characters' => $CharactersArray, 'articles' => $ArticlesArray, 'items' => $ItemsArray); return $SearchResult; }
} else { if (!Text::IsNull($_REQUEST['lastcategory']) && $_REQUEST['lastcategory'] == 'tooltip') { $Smarty->assign('Quest', Items::QuestInfo($_REQUEST['subcategory'])); $Smarty->display('blocks/quest_tooltip'); } else { header('Location: /'); } } break; case 'guild': if (Text::IsNull($_REQUEST['subcategory'])) { Page::GenerateErrorPage($Smarty, 404); } else { if (Characters::CheckGuild($_REQUEST['subcategory'])) { if (!Text::IsNull($_REQUEST['lastcategory']) && $_REQUEST['lastcategory'] == 'tooltip') { $Smarty->assign('Guild', Characters::GetGuildData($_REQUEST['subcategory'])); $Smarty->display('blocks/guild_tooltip'); } else { Manager::LoadExtension('Guild', $ClassConstructor); if (Text::IsNull($_REQUEST['lastcategory'])) { $GuildData = Guild::GetGuildData($_REQUEST['subcategory']); if (!$GuildData) { $Smarty->assign('Page', Page::Info('community', array('bodycss' => 'server-error', 'pagetitle' => ''))); $Smarty->display('pages/guild_notfound'); } else { if (isset($_REQUEST['character'])) { $Smarty->assign('returnto', $_REQUEST['character']); } else { $Smarty->assign('returnto', false); } $Smarty->assign('Guild', $GuildData);