Example #1
0
    unset($achievements);
    $rows = $DB->select('
			SELECT a.id, a.faction, a.name_loc?d AS name, a.description_loc?d AS description, a.category, a.points, s.iconname, z.areatableID
			FROM ?_spellicons s, ?_achievement a
			LEFT JOIN (?_zones z) ON a.map != -1 AND a.map = z.mapID
			WHERE
				a.icon = s.id
				{ AND a.category = ? }
			GROUP BY a.id
			ORDER BY a.`order` ASC
		', $_SESSION['locale'], $_SESSION['locale'], isset($category) ? $category : DBSIMPLE_SKIP);
    if ($rows) {
        $achievements = array();
        $achievements['data'] = array();
        foreach ($rows as $row) {
            $achievements['data'][] = achievementinfo2($row);
        }
        if (isset($category)) {
            $catrow = $DB->selectRow('
					SELECT c1.id, c1.name_loc?d AS name, c2.id AS id2
					FROM ?_achievementcategory c1
					LEFT JOIN (?_achievementcategory c2) ON c1.parentAchievement != -1 AND c1.parentAchievement = c2.id
					WHERE
						c1.id = ?
				', $_SESSION['locale'], $category);
            if ($catrow) {
                $achievements['category1'] = $catrow['id'];
                $achievements['category2'] = $catrow['id2'];
                $achievements['category'] = $catrow['name'];
            }
        }
Example #2
0
			SELECT a.id, a.faction, a.name_loc?d AS name, a.description_loc?d AS description, a.category, a.points, s.iconname, z.areatableID
			FROM ?_spellicons s, ?_achievementcriteria c, ?_achievement a
			LEFT JOIN (?_zones z) ON a.map != -1 AND a.map = z.mapID
			WHERE
				a.icon = s.id
				AND a.id = c.refAchievement
				AND c.type IN (?a)
				AND c.value1 = ?d
			GROUP BY a.id
			ORDER BY a.name_loc?d
		', $_SESSION['locale'], $_SESSION['locale'], array(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST), $quest['entry'], $_SESSION['locale']);
    if ($rows) {
        $quest['criteria_of'] = array();
        foreach ($rows as $row) {
            allachievementsinfo2($row['id']);
            $quest['criteria_of'][] = achievementinfo2($row);
        }
    }
    // Награды и благодарности, присылаемые почтой
    if ($quest['RewMailTemplateId']) {
        if (!($quest['mailrewards'] = loot('mail_loot_template', $quest['RewMailTemplateId']))) {
            unset($quest['mailrewards']);
        }
    }
    if ($quest['RewMailDelaySecs']) {
        $quest['maildelay'] = sec_to_time($quest['RewMailDelaySecs']);
    }
    save_cache(QUEST_PAGE, $cache_key, $quest);
}
global $page;
$page = array('Mapper' => false, 'Book' => false, 'Title' => $quest['Title'] . ' - ' . $smarty->get_config_vars('Quests'), 'tab' => 0, 'type' => 5, 'typeid' => $quest['entry'], 'path' => path(0, 5));
Example #3
0
				SELECT a.id, a.faction, a.name_loc?d AS name, a.description_loc?d AS description, a.category, a.points, s.iconname, z.areatableID
				FROM ?_spellicons s, ?_achievementcriteria c, ?_achievement a
				LEFT JOIN (?_zones z) ON a.map != -1 AND a.map = z.mapID
				WHERE
					a.icon = s.id
					AND a.id = c.refAchievement
					AND c.type IN (?a)
					AND c.value1 = ?d
				GROUP BY a.id
				ORDER BY a.name_loc?d
			', $_SESSION['locale'], $_SESSION['locale'], array(ACHIEVEMENT_CRITERIA_TYPE_GAIN_REPUTATION), $faction['entry'], $_SESSION['locale']);
        if ($rows) {
            $faction['criteria_of'] = array();
            foreach ($rows as $row) {
                allachievementsinfo2($row['id']);
                $faction['criteria_of'][] = achievementinfo2($row);
            }
        }
        save_cache(FACTION_PAGE, $cache_key, $faction);
    }
}
$page = array('Mapper' => false, 'Book' => false, 'Title' => $faction['name'] . ' - ' . $smarty->get_config_vars('Factions'), 'tab' => 0, 'type' => 8, 'typeid' => $faction['entry'], 'path' => path(0, 7, $faction['category2'], $faction['category']));
$smarty->assign('page', $page);
// Комментарии
$smarty->assign('comments', getcomments($page['type'], $page['typeid']));
// Данные о квесте
$smarty->assign('faction', $faction);
// Количество MySQL запросов
$smarty->assign('mysql', $DB->getStatistics());
// Загружаем страницу
$smarty->display('faction.tpl');
Example #4
0
			SELECT a.id, a.faction, a.name_loc?d AS name, a.description_loc?d AS description, a.category, a.points, s.iconname, z.areatableID
			FROM ?_spellicons s, ?_achievementcriteria c, ?_achievement a
			LEFT JOIN (?_zones z) ON a.map != -1 AND a.map = z.mapID
			WHERE
				a.icon = s.id
				AND a.id = c.refAchievement
				AND c.type IN (?a)
				AND c.value1 = ?d
			GROUP BY a.id
			ORDER BY a.name_loc?d
		', $_SESSION['locale'], $_SESSION['locale'], array(ACHIEVEMENT_CRITERIA_TYPE_USE_GAMEOBJECT, ACHIEVEMENT_CRITERIA_TYPE_FISH_IN_GAMEOBJECT), $object['entry'], $_SESSION['locale']);
    if ($rows) {
        $object['criteria_of'] = array();
        foreach ($rows as $row) {
            allachievementsinfo2($row['id']);
            $object['criteria_of'][] = achievementinfo2($row);
        }
    }
    // Положения объектофф:
    $object['position'] = position($object['entry'], 'gameobject');
    // Исправить type, чтобы подсвечивались event-овые объекты
    if ($object['position']) {
        foreach ($object['position'] as $z => $zone) {
            foreach ($zone['points'] as $p => $pos) {
                if ($pos['type'] == 0 && ($events = event_find(array('object_guid' => $pos['guid'])))) {
                    $names = array_select_key(event_name($events), 'name');
                    $object['position'][$z]['points'][$p]['type'] = 4;
                    $object['position'][$z]['points'][$p]['events'] = implode(", ", $names);
                }
            }
        }
Example #5
0
File: item.php Project: Reved/aowow
    // Цель критерии
    $rows = $DB->select('
			SELECT a.id, a.faction, a.name_loc?d AS name, a.description_loc?d AS description, a.category, a.points, s.iconname, z.areatableID
			FROM ?_spellicons s, ?_achievementcriteria c, ?_achievement a
			LEFT JOIN (?_zones z) ON a.map != -1 AND a.map = z.mapID
			WHERE
				a.icon = s.id
				AND a.id = c.refAchievement
				AND c.type IN (?a)
				AND c.value1 = ?d
			GROUP BY a.id
			ORDER BY a.name_loc?d
		', $_SESSION['locale'], $_SESSION['locale'], array(ACHIEVEMENT_CRITERIA_TYPE_OWN_ITEM, ACHIEVEMENT_CRITERIA_TYPE_USE_ITEM, ACHIEVEMENT_CRITERIA_TYPE_LOOT_ITEM, ACHIEVEMENT_CRITERIA_TYPE_EQUIP_ITEM), $item['entry'], $_SESSION['locale']);
    if ($rows) {
        $item['criteria_of'] = array();
        foreach ($rows as $row) {
            allachievementsinfo2($row['id']);
            $item['criteria_of'][] = achievementinfo2($row);
        }
    }
    save_cache(ITEM_PAGE, $cache_key, $item);
}
global $page;
$page = array('Mapper' => false, 'Book' => false, 'Title' => $item['name'] . ' - ' . $smarty->get_config_vars('Items'), 'tab' => 0, 'type' => 3, 'typeid' => $item['entry'], 'path' => path(0, 0, $item['type'], $item['subclass'], $item['classs']));
$smarty->assign('page', $page);
// Комментарии
$smarty->assign('comments', getcomments($page['type'], $page['typeid']));
// Количество MySQL запросов
$smarty->assign('mysql', $DB->getStatistics());
$smarty->assign('item', $item);
$smarty->display('item.tpl');
Example #6
0
        $rows = $DB->select('
				SELECT a.id, a.faction, a.name_loc?d AS name, a.description_loc?d AS description, a.category, a.points, s.iconname, z.areatableID
				FROM ?_spellicons s, ?_achievementcriteria c, ?_achievement a
				LEFT JOIN (?_zones z) ON a.map != -1 AND a.map = z.mapID
				WHERE
					a.icon = s.id
					AND a.id = c.refAchievement
					AND c.type IN (?a)
					AND c.value1 = ?d
				GROUP BY a.id
				ORDER BY a.name_loc?d
			', $_SESSION['locale'], $_SESSION['locale'], array(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET2, ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL, ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL2, ACHIEVEMENT_CRITERIA_TYPE_LEARN_SPELL), $spell['entry'], $_SESSION['locale']);
        if ($rows) {
            $spell['criteria_of'] = array();
            foreach ($rows as $row) {
                allachievementsinfo2($row['id']);
                $spell['criteria_of'][] = achievementinfo2($row);
            }
        }
        save_cache(SPELL_PAGE, $cache_key, $spell);
    }
}
global $page;
$page = array('Mapper' => false, 'Book' => false, 'Title' => $spell['name'] . ' - ' . $smarty->get_config_vars('Spells'), 'tab' => 0, 'type' => 6, 'typeid' => $spell['entry'], 'path' => path(0, 1));
$smarty->assign('page', $page);
// Комментарии
$smarty->assign('comments', getcomments($page['type'], $page['typeid']));
// Количество MySQL запросов
$smarty->assign('mysql', $DB->getStatistics());
$smarty->assign('spell', $spell);
$smarty->display('spell.tpl');
Example #7
0
			FROM ?_itemset
			WHERE name_loc' . $_SESSION['locale'] . ' LIKE ?
			LIMIT ' . $AoWoWconf["limit"] . '
		', $nsearch);
        foreach ($rows as $row) {
            $found['itemset'][] = itemsetinfo2($row);
        }
        // Достижения
        $rows = $DB->select('
			SELECT *
			FROM ?_achievement
			WHERE name_loc' . $_SESSION['locale'] . ' LIKE ?
			LIMIT ' . $AoWoWconf["limit"] . '
		', $nsearch);
        foreach ($rows as $row) {
            $found['achievement'][] = achievementinfo2($row);
        }
        // Ищем спеллы
        $rows = $DB->select('
			SELECT ?#, spellID
			FROM ?_spell s, ?_spellicons i
			WHERE
				s.spellname_loc' . $_SESSION['locale'] . ' like ?
				AND i.id = s.spellicon
			LIMIT ' . $AoWoWconf["limit"] . '
		', $spell_cols[2], $nsearch);
        foreach ($rows as $row) {
            $found['spell'][] = spellinfo2($row);
        }
    }
    $keys = array_keys($found);