$rx = 0; $rc = 0; $q = "TRUNCATE TABLE `" . $roster->db->table('achie', $addon['basename']) . "`;"; $r = $roster->db->query($q); $q = "TRUNCATE TABLE `" . $roster->db->table('crit', $addon['basename']) . "`;"; $r = $roster->db->query($q); foreach ($a['achievements'] as $order => $cat) { //echo $cat['name'].' - '.$cat['id'].'<br>'; if (isset($cat['achievements'])) { foreach ($cat['achievements'] as $d => $achi) { $tooltip = '<div style="width:100%;style="color:#FFB100""><span style="float:right;">' . $achi['points'] . ' Points</span>' . $achi['title'] . '</div><br>' . $achi['description'] . ''; $crit = ''; $crit .= '<br><div class="meta-achievements"><ul>'; foreach ($achi['criteria'] as $r => $d) { $crit .= '<li><div id="crt' . $d['id'] . '">' . $d['description'] . '</div></li>'; $update->reset_values(); $update->add_value('crit_achie_id', $achi['id']); $update->add_value('crit_id', $d['id']); $update->add_value('crit_desc', $d['description']); $querystr = "INSERT INTO `" . $roster->db->table('crit', $addon['basename']) . "` SET " . $update->assignstr; $result = $roster->db->query($querystr); //echo $querystr.'<br>'; $rc++; } $crit .= '</ul></div>'; $tooltip .= $crit; $update->reset_values(); $update->add_value('achie_name', $achi['title']); $update->add_value('achie_desc', $achi['description']); $update->add_value('achie_points', $achi['points']); $update->add_value('achie_id', $achi['id']);
public function InsertGCache($data) { global $roster, $update; $tooltip = $roster->api->Item->item($data, null, null); $tooltip = str_replace('<br /><br />', "<br />", $tooltip); require_once ROSTER_LIB . 'update.lib.php'; $update = new update(); $update->reset_values(); $update->add_value('gem_id', $data['id']); $update->add_value('gem_name', $data['name']); $update->add_value('gem_color', strtolower($data['gemInfo']['type']['type'])); $update->add_value('gem_tooltip', $tooltip); $update->add_value('gem_texture', $data['icon']); $update->add_value('gem_bonus', $data['gemInfo']['bonus']['name']); $update->add_value('locale', $roster->config['api_url_locale']); $update->add_value('timestamp', time()); $update->add_value('json', json_encode($data, true)); $querystr = "INSERT INTO `" . $roster->db->table('api_gems') . "` SET " . $update->assignstr; $result = $roster->db->query($querystr); }
function guild_pre($guild) { global $roster, $update, $addon; $this->guild_id = $guild['guild_id']; include_once ROSTER_LIB . 'update.lib.php'; $update = new update(); $char = $roster->api2->fetch('guild', array('name' => $guild['GuildName'], 'server' => $guild['Server'], 'fields' => 'achievements')); //$roster->api->Guild->getGuildInfo($guild['Server'],$guild['GuildName'],'2'); $rx = 0; $achi = $char['achievements']; $a = true; $sqlquery2 = "DELETE FROM `" . $roster->db->table('g_achievements', $this->data['basename']) . "` WHERE `member_id` = '" . $this->guild_id . "'"; $result2 = $roster->db->query($sqlquery2); foreach ($achi['achievementsCompleted'] as $var => $info) { $update->reset_values(); $update->add_value('achie_id', $info); $update->add_value('achie_date', $char['achievements']['achievementsCompletedTimestamp']['' . $var . '']); $update->add_value('member_id', $this->guild_id); $querystr = "INSERT INTO `" . $roster->db->table('g_achievements', $this->data['basename']) . "` SET " . $update->assignstr; $rx++; $result = $roster->db->query($querystr); } $achi = $char['achievements']; $a = true; ///* $sqlquery2 = "DELETE FROM `" . $roster->db->table('g_criteria', $this->data['basename']) . "` WHERE `member_id` = '" . $this->guild_id . "'"; $result2 = $roster->db->query($sqlquery2); //we are not gona use criteria yet so much data to process it really slows roster foreach ($achi['criteria'] as $var => $info) { $update->reset_values(); $update->add_value('member_id', $this->guild_id); $update->add_value('crit_id', $info); $update->add_value('crit_date', $char['achievements']['criteriaTimestamp']['' . $var . '']); $update->add_value('crit_value', $char['achievements']['criteriaQuantity']['' . $var . '']); $querystr = "INSERT INTO `" . $roster->db->table('g_criteria', $this->data['basename']) . "` SET " . $update->assignstr; $result = $roster->db->query($querystr); } //*/ $this->messages .= '<li>Updating Achievements: '; $this->messages .= $rx . '</li>'; return true; }
/** * Guild_pre trigger, set out guild id here * * @param array $guild * CP.lua guild data */ function guild_pre($guild) { global $roster, $update; $this->guild_id = $guild['guild_id']; require_once ROSTER_LIB . 'update.lib.php'; $update = new update(); $feed = $roster->api2->fetch('guild', array('name' => $guild['GuildName'], 'server' => $guild['Server'], 'fields' => 'news')); //$roster->api->Guild->getGuildInfo($guild['Server'],$guild['GuildName'],'3'); $tooltip_text = ''; foreach ($feed['news'] as $e => $a) { //print_r($this->data); if ($a['type'] == 'playerAchievement' or $a['type'] == 'guildAchievement') { $tooltip_text = '<div style="width:100%;style="color:#FFB100""><span style="float:right;">' . $a['achievement']['points'] . ' Points</span>' . $a['achievement']['title'] . '</div><br>' . $a['achievement']['description'] . ''; $crit = ''; if (isset($a['featOfStrength']) && $a['featOfStrength'] != 1) { $crit .= '<br><div class="meta-achievements"><ul>'; foreach ($a['achievement']['criteria'] as $r => $d) { $crit .= '<li>' . $d['description'] . '</li>'; } $crit .= '</ul></div>'; } $tooltip_text .= $crit; } else { $tooltip_text = ''; } $title = ''; $update_sql = null; $update->reset_values(); $update->add_value('guild_id', $this->guild_id); $update->add_value('type', $a['type']); if (isset($a['character'])) { $update->add_value('Member', $a['character']); } if ($a['type'] == 'playerAchievement' or $a['type'] == 'guildAchievement') { $update->add_value('Achievement', $tooltip_text); $update->add_value('achievement_icon', $a['achievement']['icon']); $update->add_value('achievement_title', $a['achievement']['title']); $update->add_value('achievement_points', $a['achievement']['points']); $update->add_value('achievement_id', $a['achievement']['id']); if (isset($a['criteria']) && is_array($a['criteria'])) { if (count($a['criteria']) == 1) { $update->add_value('criteria_description', $a['criteria']['description']); } } $title = $a['achievement']['title']; } if ($a['type'] == 'BOSSKILL') { $update->add_value('achievement_points', $a['quantity']); } if (isset($a['itemId'])) { $update->add_value('item_id', $a['itemId']); } $update->add_value('timestamp', $a['timestamp']); if ($a['type'] == 'playerAchievement' or $a['type'] == 'guildAchievement') { $queryx = "SELECT * FROM `" . $roster->db->table('guild_feed', $this->data['basename']) . "` WHERE `guild_id`='" . $this->guild_id . "' and `achievement_title` = '" . $roster->db->escape($title) . "' AND `timestamp` = '" . $a['timestamp'] . "'"; } if ($a['type'] == 'itemLoot' or $a['type'] == 'itemPurchase') { $queryx = "SELECT * FROM `" . $roster->db->table('guild_feed', $this->data['basename']) . "` WHERE `guild_id`='" . $this->guild_id . "' and `item_id` = '" . $a['itemId'] . "'"; } //$queryx = "SELECT * FROM `".$roster->db->table('char_feed',$this->data['basename'])."` WHERE `member_id`='" . $member_id . "' and `timestamp`='".$a['timestamp']."'"; $resultx = $roster->db->query($queryx); $update_sql = $roster->db->num_rows($resultx); $rowg = $roster->db->fetch($resultx); if (!isset($a['itemId']) && $update_sql == 1) { if ($rowg['achievement_title'] != $title) { $update_sql = 0; } } if (isset($a['itemId']) && $update_sql == 1) { if ($a['itemId'] != $rowg['item_id']) { $update_sql = 0; } } if ($update_sql >= '1') { } else { $querystr = "INSERT INTO `" . $roster->db->table('guild_feed', $this->data['basename']) . "` SET " . $update->assignstr . ";"; $result = $roster->db->query($querystr); $this->messages .= '.'; } } return true; }
public function _insertcache($data, $vars, $parameters) { global $roster, $update; require_once ROSTER_LIB . 'update.lib.php'; $update = new update(); $update->reset_values(); $update->add_value('id', $parameters['id']); $update->add_value('type', $vars['type']); $update->add_value('timestamp', time()); $update->add_value('name', ''); $update->add_value('locale', $vars['locale']); $update->add_value('json', json_encode($data, true)); $querystr = "REPLACE INTO `" . $roster->db->table('api_cache') . "` SET " . $update->assignstr; $result = $roster->db->query($querystr); }