示例#1
0
 public static function revive($guid, $char_db)
 {
     $guid = (int) $guid;
     $rid = server::getRealmId($char_db);
     connect::connectToRealmDB($rid);
     if (character::isOnline($guid) == TRUE) {
         echo '<b class="red_text">Please log out your character before proceeding.';
     } else {
         if ($GLOBALS['service']['revive']['currency'] == 'vp') {
             if (account::hasVP($_SESSION['cw_user'], $GLOBALS['service']['unstuck']['price']) == FALSE) {
                 die('<b class="red_text">Not enough Vote Points!</b>');
             } else {
                 account::deductVP(account::getAccountID($_SESSION['cw_user']), $GLOBALS['service']['revive']['price']);
             }
         }
         if ($GLOBALS['service']['revive']['currency'] == 'dp') {
             if (account::hasDP($_SESSION['cw_user'], $GLOBALS['service']['unstuck']['price']) == FALSE) {
                 die('<b class="red_text">Not enough ' . $GLOBALS['donation']['coins_name'] . '</b>');
             } else {
                 account::deductDP(account::getAccountID($_SESSION['cw_user']), $GLOBALS['service']['revive']['price']);
             }
         }
         mysql_query("DELETE FROM character_aura WHERE guid = '" . $guid . "' AND spell = '20584' OR guid = '" . $guid . "' AND spell = '8326'");
         account::logThis("Performed a revive on " . character::getCharName($guid, $rid), 'Revive', $rid);
         return TRUE;
     }
 }
示例#2
0
</table>
</form>
<?php 
}
if (isset($_POST['ir_step3'])) {
    $guid = (int) $_POST['ir_char'];
    $instance = (int) $_POST['ir_instance'];
    if ($GLOBALS['service'][$service]['currency'] == "vp") {
        if (account::hasVP($_SESSION['cw_user'], $GLOBALS['service'][$service]['price']) == FALSE) {
            echo '<span class="alert">You do not have enough Vote Points!';
        } else {
            connect::selectDB($_POST['ir_realm']);
            mysql_query("DELETE FROM instance WHERE id='" . $instance . "'");
            account::deductVP(account::getAccountID($_SESSION['cw_user']), $GLOBALS['service'][$service]['price']);
            echo '<span class="approved">The instance lock was removed!</span>';
        }
    } elseif ($GLOBALS['service'][$service]['currency'] == "dp") {
        if (account::hasDP($_SESSION['cw_user'], $GLOBALS['service'][$service]['price']) == FALSE) {
            echo '<span class="alert">You do not have enough ' . $GLOBALS['donation']['coins_name'];
        } else {
            connect::selectDB($_POST['ir_realm']);
            mysql_query("DELETE FROM instance WHERE id='" . $instance . "'");
            account::deductDP(account::getAccountID($_SESSION['cw_user']), $GLOBALS['service'][$service]['price']);
            echo '<span class="approved">The instance lock was removed!</span>';
            account::logThis("Performed an Instance reset on " . character::getCharName($guid, server::getRealmId($_POST['ir_realm'])), "instancereset", server::getRealmId($_POST['ir_realm']));
        }
    }
}
?>
<br/>
<a href="?p=instancereset">Start over</a>
示例#3
0
function process_cart($cart, $charaID, $character, $accountID, $realm)
{
    if (!isset($_SESSION[$cart . 'Cart'])) {
        return;
    }
    $host = $GLOBALS['realms'][$realm]['host'];
    $rank_user = $GLOBALS['realms'][$realm]['rank_user'];
    $rank_pass = $GLOBALS['realms'][$realm]['rank_pass'];
    $ra_port = $GLOBALS['realms'][$realm]['ra_port'];
    $totalPrice = 0;
    $entrys = array_keys($_SESSION[$cart . 'Cart']);
    if (count($entrys) > 0) {
        // Array of valid items
        $items = array();
        // Generate List
        $query = "SELECT entry, price FROM shopitems WHERE in_shop = '{$cart}' AND entry IN (";
        $query .= implode(', ', $entrys);
        $query .= ")";
        if ($result = mysql_query($query)) {
            while ($row = mysql_fetch_assoc($result)) {
                $item = $_SESSION[$cart . 'Cart'][$row['entry']];
                if ($item) {
                    // Update Price
                    $item['price'] = $row['price'];
                    $item['totalPrice'] = $row['price'] * $item['quantity'];
                    $totalPrice = $totalPrice + $item['totalPrice'];
                    // Valid Item!
                    $items[$row['entry']] = $item;
                    unset($item);
                }
            }
        }
        if ($cart == 'donate' and account::hasDP($_SESSION['cw_user'], $totalPrice) == FALSE) {
            die("You do not have enough {$GLOBALS['donation']['coins_name']}!");
        } else {
            if ($cart == 'vote' and account::hasVP($_SESSION['cw_user'], $totalPrice) == FALSE) {
                die("You do not have enough Vote Points!");
            }
        }
        foreach ($items as $entry => $info) {
            $num = $info['quantity'];
            while ($num > 0) {
                $qty = $num > 12 ? 12 : $num;
                $command = "send items " . $character . " \"Your requested item\" \"Thanks for supporting us!\" " . $entry . ":" . $qty . " ";
                if ($error = sendRA($command, $rank_user, $rank_pass, $host, $ra_port)) {
                    echo 'Connection problems...Aborting | Error: ' . $error;
                    exit;
                } else {
                    shop::logItem($cart, $entry, $charaID, $accountID, $realm, $qty);
                    if ($cart == 'donate') {
                        account::deductDP($accountID, $info['price'] * $qty);
                    } else {
                        account::deductVP($accountID, $info['price'] * $qty);
                    }
                    // Update quantity incase of errors on the next loop
                    $_SESSION[$cart . 'Cart'][$entry]['quantity'] -= $qty;
                }
                $num = $num - $qty;
            }
            // All $entry have been sent
            unset($_SESSION[$cart . 'Cart'][$entry]);
        }
    }
    // Empty Cart
    unset($_SESSION[$cart . 'Cart']);
}
示例#4
0
        connect::selectDB('webdb');
        $realm = explode("*", $character_realm);
        $result = mysql_query("SELECT price FROM shopitems WHERE entry='" . $entry . "'");
        $row = mysql_fetch_assoc($result);
        $account_id = account::getAccountIDFromCharId($realm[0], $realm[1]);
        $account_name = account::getAccountName($account_id);
        if ($type == 'vote') {
            if (account::hasVP($account_name, $row['price']) == FALSE) {
                die('<b class="red_text">You do not have enough Vote Points</b>');
            }
            account::deductVP($account_id, $row['price']);
        } elseif ($type == 'donate') {
            if (account::hasDP($account_name, $row['price']) == FALSE) {
                die('<b class="red_text">You do not have enough ' . $GLOBALS['donation']['coins_name'] . '</b>');
            }
            account::deductDP($account_id, $row['price']);
        }
        shop::logItem($type, $entry, $realm[0], $account_id, $realm[1], 1);
        $result = mysql_query("SELECT * FROM realms WHERE id='" . $realm[1] . "'");
        $row = mysql_fetch_assoc($result);
        if ($row['sendType'] == 'ra') {
            require '../misc/ra.php';
            require '../classes/character.php';
            sendRa("send items " . character::getCharname($realm[0]) . " \"Your requested item\" \"Thanks for supporting us!\" " . $entry . " ", $row['rank_user'], $row['rank_pass'], $row['host'], $row['ra_port']);
        } elseif ($row['sendType'] == 'soap') {
            require '../misc/soap.php';
            require '../classes/character.php';
            sendSoap("send items " . character::getCharname($realm[0]) . " \"Your requested item\" \"Thanks for supporting us!\" " . $entry . " ", $row['rank_user'], $row['rank_pass'], $row['host'], $row['soap_port']);
        }
    }
}