// acceptgame // Params: action, sid, gameid //////////////////////////////////////////////////////////////////////////////////////////// case "acceptgame": if (isSessionIDValid($config, $xsid)) { if ($_GET['gameid'] != "") { //Instantiate theCR3DCQuery Class $oR3DCQuery = new CR3DCQuery($config); $session = base64_decode($xsid); list($uniq, $player_id) = preg_split("/\\|/", $session); //Instantiate theCR3DCQuery Class $oR3DCQuery = new CR3DCQuery($config); $IsAccepted = $oR3DCQuery->CheckGameAccepted($config, $player_id, $_GET['gameid']); list($PlayerType, $status) = explode(" ", $IsAccepted, 2); if (($status == "waiting" || $status == "-") && $PlayerType == "o") { $oR3DCQuery->AcceptGame($xsid, $_GET['gameid'], $player_id); echo "<RESPONSE>\n"; echo "<ACCEPTGAME>"; echo "true"; echo "</ACCEPTGAME>\n"; echo "</RESPONSE>\n"; } else { echo "<RESPONSE>\n"; echo "<ACCEPTGAME>"; echo "false"; echo "</ACCEPTGAME>\n"; echo "</RESPONSE>\n"; } $oR3DCQuery->Close(); unset($oR3DCQuery); } else {
//Calculate white player $wnewpoints = $oR3DCQuery->ELOCalculation($wcurpoints, $bcurpoints, 0.5, 1, $oR3DCQuery->GetPlayerGameCount($w_player_id)); //update points $oR3DCQuery->ELOUpdateRating($b_player_id, $bnewpoints); $oR3DCQuery->ELOUpdateRating($w_player_id, $wnewpoints); } /////////////////////////////////////////////////////////////////////// $oR3DCQuery->UpdateGameStatus($config, $gid, "C", "D"); $oR3DCQuery->CachePlayerPointsByPlayerID($b_player_id); $oR3DCQuery->CachePlayerPointsByPlayerID($w_player_id); } ///////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////// //Accept game if ($cmdAccept != "" && $gid != "") { $oR3DCQuery->AcceptGame($_SESSION['sid'], $gid, $_SESSION['id']); } $cmdRevoke = $_GET['cmdRevoke']; $brevoked = false; ////////////////////////////////////////////// //Revoke game if ($cmdRevoke != "" && $gid != "") { $oR3DCQuery->RevokeGame($gid, $_SESSION['id']); $brevoked = true; } $cmdRevokeChlng = $_GET['cmdRevokeChlng']; if ($cmdRevokeChlng != "" && $gid != "") { $oR3DCQuery->RevokeGame2($gid, $_SESSION['id']); $brevoked = true; } //Check if the game is accepted