/** * Returns array with guild members list. * @category Guilds class * @access public * @return array **/ public function BuildGuildList() { if (!$this->guildId) { Armory::Log()->writeError('%s : guildId not defined', __METHOD__); return false; } $memberListTmp = Armory::$cDB->select("\n SELECT\n `characters`.`guid`,\n `characters`.`name`,\n `characters`.`class` AS `classId`,\n `characters`.`race` AS `raceId`,\n `characters`.`gender` AS `genderId`,\n `characters`.`level`,\n `guild_member`.`rank`\n FROM `characters` AS `characters`\n LEFT JOIN `guild_member` AS `guild_member` ON `guild_member`.`guid`=`characters`.`guid` AND `guild_member`.`guildid`=%d\n LEFT JOIN `guild` AS `guild` ON `guild`.`guildid`=%d\n WHERE `guild`.`guildid`=%d AND `characters`.`level`>=%d AND `guild_member`.`guid`=`characters`.`guid`", $this->guildId, $this->guildId, $this->guildId, Armory::$armoryconfig['minlevel']); $countMembers = count($memberListTmp); for ($i = 0; $i < $countMembers; $i++) { $pl = new Characters(); $pl->SetOptions(LOAD_NOTHING); $pl->SetOptions(array('load_achievements' => true)); $pl->BuildCharacter($memberListTmp[$i]['name'], Armory::$currentRealmInfo['id'], false); $memberListTmp[$i]['achPoints'] = $pl->GetAchievementMgr()->GetAchievementPoints(); $memberListTmp[$i]['url'] = sprintf('r=%s&cn=%s&gn=%s', urlencode(Armory::$currentRealmInfo['name']), urlencode($memberListTmp[$i]['name']), urlencode($this->guildName)); unset($pl); } return $memberListTmp; }