function RestoreLadderGame($restoreGameId) { $appRoot = realpath(dirname(__FILE__)) . '/'; require $appRoot . './../variables.php'; require $appRoot . './../variablesdb.php'; require_once $appRoot . './../functions.php'; $resultMsg = "Restoring Game #" . $restoreGameId . "<br>"; $sql = "select * from {$gamestable} where game_id = '{$restoreGameId}'"; $result = mysql_query($sql); $num = mysql_num_rows($result); if ($num != 1) { $resultMsg .= "Invalid query, found {$num} results for '{$sql}'"; } else { $row = mysql_fetch_array($result); $deleted = $row['deleted']; $row_season = $row['season']; $isDraw = $row['isDraw']; if ($row_season != $season) { $resultMsg .= "<p>Game #" . $restoreGameId . " is not from this season!</p>"; } else { if ($deleted == 'no') { $resultMsg .= "<p>Game #" . $restoreGameId . " is not deleted!</p>"; } else { $ratingdiff = $row['ratingdiff']; $winpoints = $row['winpoints']; $losepoints = $row['losepoints']; $losepoints2 = $row['losepoints2']; $winner = $row['winner']; $winner2 = $row['winner2']; $loser = $row['loser']; $loser2 = $row['loser2']; $teamLadder = $row['teamLadder']; $sql = "UPDATE {$gamestable} SET deleted = 'no' where game_id = '{$restoreGameId}'"; $result = mysql_query($sql); if ($result != 1) { $resultMsg .= '<p>Error updating game!</p>'; } else { $resultMsg .= "<p>Game #{$restoreGameId} restored.</p>"; } $sql = "select version from {$gamestable} where game_id ='{$restoreGameId}'"; $result = mysql_query($sql); while ($row = mysql_fetch_array($result)) { $version = $row["version"]; } if ($teamLadder == 0) { $pointsField = getPointsFieldForVersion($version); $winsField = getWinsFieldForVersion($version); $lossesField = getLossesFieldForVersion($version); $gamesField = getGamesFieldForVersion($version); $drawsField = "draws"; } else { $pointsField = "teamPoints"; $winsField = "teamWins"; $lossesField = "teamLosses"; $drawsField = "teamDraws"; $gamesField = "teamGames"; } $winner_streakArray = getStreak($winner); $winner_winstreak = $winner_streakArray[0]; $winner_losestreak = $winner_streakArray[1]; $resultMsg .= "<p>New streak for {$winner}: Won " . $winner_winstreak . ", lost " . $winner_losestreak . "</p>"; $loser_streakArray = getStreak($loser); $loser_winstreak = $loser_streakArray[0]; $loser_losestreak = $loser_streakArray[1]; $resultMsg .= "<p>New streak for {$loser}: Won " . $loser_winstreak . ", lost " . $loser_losestreak . "</p>"; $sql = "SELECT {$pointsField} from {$playerstable} where name='{$loser}'"; $result = mysql_query($sql); $row = mysql_fetch_array($result); $ra2ladder = $row[$pointsField]; $newra2ladder = $ra2ladder - $losepoints; if ($newra2ladder < 0) { $newra2ladder = 0; } if ($isDraw > 0) { $winLoss = 0; $draw = 1; } else { $winLoss = 1; $draw = 0; } $sql = "UPDATE {$playerstable} SET {$lossesField} = {$lossesField} + {$winLoss}," . "totallosses = totallosses + {$winLoss}, " . "{$drawsField}={$drawsField}+{$draw}, totaldraws = totaldraws + {$draw}, " . "{$gamesField} = {$gamesField} + 1, " . "totalgames = totalgames + 1, " . "streakwins = {$loser_winstreak}, " . "streaklosses = {$loser_losestreak}, " . "rating = rating - {$ratingdiff}, " . "{$pointsField} = {$newra2ladder} WHERE name='{$loser}'"; $result = mysql_query($sql); if ($result != 1) { $resultMsg .= '<p>Error updating loser: $result</p>'; } $sql = "UPDATE {$playerstable} " . "SET {$winsField} = {$winsField}+ {$winLoss}, " . "totalwins = totalwins + {$winLoss}, " . "{$gamesField} = {$gamesField} + 1, " . "totalgames = totalgames + 1, " . "{$drawsField}={$drawsField}+{$draw}, totaldraws = totaldraws + {$draw}, " . "streakwins = {$winner_winstreak}, " . "streaklosses = {$winner_losestreak}, " . "rating = rating + {$ratingdiff}, " . "{$pointsField} = {$pointsField} + {$winpoints} " . "WHERE name='{$winner}'"; $result = mysql_query($sql); if ($result != 1) { $resultMsg .= '<p>Error updating winner: ' . $result . '</p>'; } // Winner2 / Loser2 if (!empty($loser2)) { $loser2_streakArray = getStreak($loser2); $loser2_winstreak = $loser2_streakArray[0]; $loser2_losestreak = $loser2_streakArray[1]; $resultMsg .= "<p>New streak for {$loser2}: Won " . $loser2_winstreak . ", lost " . $loser2_losestreak . "</p>"; $sql = "SELECT {$pointsField} from {$playerstable} where name='{$loser2}'"; $result = mysql_query($sql); $row = mysql_fetch_array($result); $ra2ladder = $row[$pointsField]; $newra2ladder = $ra2ladder - $losepoints2; if ($newra2ladder < 0) { $newra2ladder = 0; } $sql = "UPDATE {$playerstable} SET {$lossesField} = {$lossesField} + {$winLoss}," . "totallosses = totallosses + {$winLoss}, " . "{$gamesField} = {$gamesField} + 1, " . "totalgames = totalgames + 1, " . "{$drawsField} = {$drawsField} + {$draw}, totaldraws = totaldraws + {$draw}, " . "streakwins = {$loser_winstreak}, " . "streaklosses = {$loser_losestreak}, " . "rating = rating - {$ratingdiff}, " . "{$pointsField} = {$newra2ladder} WHERE name='{$loser2}'"; $result = mysql_query($sql); if ($result != 1) { $resultMsg .= '<p>Error updating loser2: $result</p>'; } } if (!empty($winner2)) { $winner2_streakArray = getStreak($winner2); $winner2_winstreak = $winner2_streakArray[0]; $winner2_losestreak = $winner2_streakArray[1]; $resultMsg .= "<p>New streak for {$winner2}: Won " . $winner2_winstreak . ", lost " . $winner2_losestreak . "</p>"; $sql = "UPDATE {$playerstable} " . "SET {$winsField} = {$winsField} + {$winLoss}, " . "totalwins = totalwins + {$winLoss}, " . "{$gamesField} = {$gamesField} + 1, " . "totalgames = totalgames + 1, " . "{$drawsField} = {$drawsField} + {$draw}, totaldraws = totaldraws + {$draw}, " . "streakwins = {$winner2_winstreak}, " . "streaklosses = {$winner2_losestreak}, " . "rating = rating + {$ratingdiff}, " . "{$pointsField} = {$pointsField} + {$winpoints} " . "WHERE name='{$winner2}'"; $result = mysql_query($sql); if ($result != 1) { $resultMsg .= '<p>Error updating winner: ' . $result . '</p>'; } } } } } return $resultMsg; }
if ($newra2ladder < 0) { $newra2ladder = 0; } $sql = "UPDATE $playerstable SET $winsField=$winsField-$winLoss, totalwins = totalwins-$winLoss, $gamesField = $gamesField-1, totalgames = totalgames-1, streakwins = $winner2_winstreak, $drawsField = $drawsField-$draw, totaldraws = totaldraws-$draw, streaklosses = $winner2_losestreak, rating = rating - $ratingdiff, $pointsField = $newra2ladder WHERE name='$winner2'"; $result = mysql_query($sql); if ($result != 1) { $resultMsg .= '<p>Error updating winner2: $result</p>'; } } if (!empty($loser2)) { $loser2_streakArray = getStreak($loser2); $loser2_winstreak = $loser2_streakArray[0]; $loser2_losestreak = $loser2_streakArray[1]; $resultMsg .= "<p>New streak for $loser2: Won " . $loser2_winstreak . ", lost " . $loser2_losestreak . "</p>"; $sql = "UPDATE $playerstable SET $lossesField = $lossesField-$winLoss, totallosses = totallosses-$winLoss, $gamesField= $gamesField-1, totalgames = totalgames-1, streakwins = $loser2_winstreak, streaklosses = $loser2_losestreak, $drawsField = $drawsField-$draw, totaldraws = totaldraws-$draw, rating = rating + $ratingdiff, $pointsField = $pointsField + $losepoints2 WHERE name='$loser2'"; $result = mysql_query($sql); if ($result != 1) { $resultMsg .= '<p>Error updating loser2: $result</p>'; } }