Example #1
0
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>';
    }
}
Example #2
0
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);
    }
}