function go_display_rewards($user_id, $points, $currency, $bonus_currency, $update_percent = 1, $number_of_stages = 4, $future = false) { if (!is_null($number_of_stages) && (!is_null($points) || !is_null($currency) || !is_null($bonus_currency))) { echo "<div class='go_task_rewards' style='margin: 6px 0px 6px 0px;'><strong>Rewards</strong><br/>"; $p_name = go_return_options('go_points_name'); $c_name = go_return_options('go_currency_name'); $bc_name = go_return_options('go_bonus_currency_name'); $u_bonuses = go_return_bonus_currency($user_id); $u_penalties = go_return_penalty($user_id); if ($update_percent !== 1 && !empty($update_percent)) { $rewards_array = array($points, $currency, $bonus_currency); $p_array = $rewards_array[0]; $c_array = $rewards_array[1]; $bc_array = $rewards_array[2]; } else { $p_array = $points; $c_array = $currency; $bc_array = $bonus_currency; } $custom_fields = get_post_custom(); for ($i = 0; $i < $number_of_stages; $i++) { if ($future) { if (2 == $i) { $mod_array = go_return_multiplier($user_id, floor($p_array[$i] * $update_percent), floor($c_array[$i] * $update_percent), $u_bonuses, $u_penalties); } else { $mod_array = array($p_array[$i], $c_array[$i]); } } else { $mod_array = go_return_multiplier($user_id, floor($p_array[$i] * $update_percent), floor($c_array[$i] * $update_percent), $u_bonuses, $u_penalties); } $bc = floor($bc_array[$i] * $update_percent); $stage_name = ''; switch ($i) { case 0: $stage_name = go_return_options('go_first_stage_name'); break; case 1: $stage_name = go_return_options('go_second_stage_name'); break; case 2: $stage_name = go_return_options('go_third_stage_name'); break; case 3: $stage_name = go_return_options('go_fourth_stage_name'); break; case 4: $stage_name = go_return_options('go_fifth_stage_name'); break; } $stage = $i + 1; $output = "{$stage_name} - <span id='go_task_stage_{$stage}_rewards'>" . ((!empty($mod_array[0]) || !empty($p_array[$i])) && !empty($p_name) ? "<span id='go_stage_{$stage}_points'>{$mod_array[0]}</span> {$p_name}" : '') . ' ' . ((!empty($mod_array[1]) || !empty($c_array[$i])) && !empty($c_name) ? "<span id='go_stage_{$stage}_currency'>{$mod_array[1]}</span> {$c_name}" : '') . ' ' . (!empty($bc) && !empty($bc_name) ? "<span id='go_stage_{$stage}_bonus_currency'>{$bc}</span> {$bc_name}" : '') . "</span><br/>"; if ($update_percent == 0 && $stage == 3) { $output = "{$stage_name} - <span id='go_task_stage_{$stage}_rewards'>Expired: No Rewards</span><br/>"; } echo $output; if (!empty($custom_fields['go_mta_mastery_bonus_loot'][0])) { $bonus_loot = unserialize($custom_fields['go_mta_mastery_bonus_loot'][0]); } } if (!empty($bonus_loot) && $bonus_loot[0]) { $bonus_loot_display = true; if (!empty($bonus_loot[1])) { $quest_items_array = array(); $bonus_items_array = array(); foreach ($bonus_loot[1] as $store_item => $on) { if ($on === 'on') { if ($bonus_loot[2][$store_item] * 10 > 999) { $quest_items_array[] = "<a href='#' onclick='go_lb_opener({$store_item})'>" . get_the_title($store_item) . "</a>"; } elseif ($bonus_loot[2][$store_item] * 10 <= 999) { $bonus_items_array[] = "<a href='#' onclick='go_lb_opener({$store_item})'>" . get_the_title($store_item) . "</a> " . $bonus_loot[2][$store_item] . "% Drop Rate"; } } } } } $bonus_loot_name = go_return_options('go_bonus_loot_name'); $task_loot_name = go_return_options('go_task_loot_name'); if (!empty($quest_items_array)) { $quest_items_array_keys = array_keys($quest_items_array); } if (!empty($bonus_items_array)) { $bonus_items_array_keys = array_keys($bonus_items_array); } if (!empty($quest_items_array)) { echo "{$task_loot_name} - "; foreach ($quest_items_array_keys as $index => $key) { echo $quest_items_array[$key]; if ($index < max($quest_items_array_keys)) { echo ', '; } } echo "</br>"; } if (!empty($bonus_items_array)) { echo "<strong>{$bonus_loot_name} </strong>- "; foreach ($bonus_items_array_keys as $index => $key) { echo $bonus_items_array[$key]; if ($index < max($bonus_items_array_keys)) { echo ', '; } } } echo '</div>'; } }
function go_update_totals($user_id, $points, $currency, $bonus_currency, $penalty, $minutes, $status = null) { global $wpdb; $table_name_go_totals = $wpdb->prefix . "go_totals"; $bonuses = go_return_bonus_currency($user_id); $penalties = go_return_penalty($user_id); if ($status !== -1) { $modded_array = go_return_multiplier($user_id, $points, $currency, $bonuses, $penalties); $points = $modded_array[0]; $currency = $modded_array[1]; } if ($points != 0) { $totalpoints = go_return_points($user_id); $wpdb->update($table_name_go_totals, array('points' => $points + $totalpoints), array('uid' => $user_id)); go_update_ranks($user_id, $points + $totalpoints); go_notify('points', $points, 0, 0, 0, 0, $user_id); $p = (string) ($points + $totalpoints); go_update_admin_bar('points', go_return_options('go_points_name'), $p, $status); } if ($currency != 0) { $totalcurrency = go_return_currency($user_id); $wpdb->update($table_name_go_totals, array('currency' => $currency + $totalcurrency), array('uid' => $user_id)); go_notify('currency', 0, $currency, 0, 0, 0, $user_id); go_update_admin_bar('currency', go_return_options('go_currency_name'), $currency + $totalcurrency); } if ($bonus_currency != 0) { $total_bonus_currency = go_return_bonus_currency($user_id); $wpdb->update($table_name_go_totals, array('bonus_currency' => $total_bonus_currency + $bonus_currency), array('uid' => $user_id)); go_notify('bonus_currency', 0, 0, $bonus_currency, 0, 0, $user_id); go_update_admin_bar('bonus_currency', go_return_options('go_bonus_currency_name'), $total_bonus_currency + $bonus_currency); } if ($penalty != 0) { $total_penalty = go_return_penalty($user_id); $wpdb->update($table_name_go_totals, array('penalty' => $total_penalty + $penalty), array('uid' => $user_id)); go_notify('penalty', 0, 0, 0, $penalty, 0, $user_id); go_update_admin_bar('penalty', go_return_options('go_penalty_name'), $total_penalty + $penalty); } if ($minutes != 0) { $total_minutes = go_return_minutes($user_id); $wpdb->update($table_name_go_totals, array('minutes' => $total_minutes + $minutes), array('uid' => $user_id)); go_notify('minutes', 0, 0, 0, 0, $minutes, $user_id); go_update_admin_bar('minutes', go_return_options('go_minutes_name'), $total_minutes + $minutes); } }