config_load($conf_file,'faction'); // Номер фракции $id = $podrazdel; if(!$faction = load_cache(18, intval($id))) { unset($faction); // Подключаемся к ДБ: global $DB; $row = $DB->selectRow(' SELECT factionID, name, description1, description2, team, side FROM ?_factions WHERE factionID=?d LIMIT 1 ', $id ); if ($row) { $faction=array(); // Номер фракции $faction['entry'] = $row['factionID']; // Название фракции $faction['name'] = $row['name']; // Описание фракции, из клиента: $faction['description1'] = $row['description1']; // Описание фракции, c wowwiki.com, находится в таблице factions.sql: $faction['description2'] = $row['description2']; // Команда/Группа фракции if($row['team']!=0) $faction['group'] = $DB->selectCell('SELECT name FROM ?_factions WHERE factionID=?d LIMIT 1', $row['team']); // Альянс(1)/Орда(2) if($row['side']!=0) $faction['side'] = $row['side']; // Итемы с requiredreputationfaction $item_rows = $DB->select(' SELECT ?#, entry FROM item_template i, ?_icons a WHERE i.RequiredReputationFaction=?d AND a.id=i.displayid ', $item_cols[2], $id ); if ($item_rows) { $faction['items'] = array(); foreach ($item_rows as $i=>$row) $faction['items'][] = iteminfo2($row, 0); unset ($faction['items']); } // Персонажи, состоящие во фракции $creature_rows = $DB->select(' SELECT ?#, entry FROM creature_template, ?_factiontemplate WHERE faction_A IN (SELECT factiontemplateID FROM ?_factiontemplate WHERE factionID=?d) AND factiontemplateID=faction_A ', $npc_cols[0], $id ); if ($creature_rows) { $faction['creatures'] = array(); foreach ($creature_rows as $i=>$row) $faction['creatures'][] = creatureinfo2($row); unset ($creature_rows); } // Квесты для этой фракции $quests_rows = $DB->select(' SELECT ?# FROM quest_template WHERE RewRepFaction1=?d OR RewRepFaction2=?d OR RewRepFaction3=?d OR RewRepFaction4=?d ', $quest_cols[2], $id, $id, $id, $id ); if ($quests_rows) { $faction['quests'] = array(); foreach ($quests_rows as $i=>$row) $faction['quests'][] = GetQuestInfo($row, 0xFFFFFF); unset ($quests_rows); } // Faction cache save_cache(18, $faction['entry'], $faction); } } $page = array( 'Mapper' => false, 'Book' => false, 'Title' => $faction['name'].' - '.$smarty->get_config_vars('Factions'), 'tab' => 0, 'type' => 8, 'typeid' => $faction['entry'], 'path' => '[0, 7, 0]' ); $smarty->assign('page', $page); // Комментарии $smarty->assign('comments', getcomments($page['type'], $page['typeid'])); // Данные о квесте $smarty->assign('faction', $faction); // Если хоть одна информация о вещи найдена - передаём массив с информацией о вещях шаблонизатору if (isset($allitems)) $smarty->assign('allitems',$allitems); /* if (isset($npcs)) $smarty->assign('npcs',$npcs); if (isset($quests)) $smarty->assign('quests',$quests); if (isset($items)) $smarty->assign('items',$items); */ // Количество MySQL запросов $smarty->assign('mysql', $DB->getStatistics()); // Загружаем страницу $smarty->display('faction.tpl'); ?>