<%@ Language=JScript %> <% Response.Buffer = true; Response.ExpiresAbsolute = "01-01-1981"; Response.Expires = 0; Response.CacheControl = "no-cache"; %> <% var action = String(Request.Querystring("action")); var gameid = Request.Querystring("gameid"); if (action != "undefined") { //reset ratings of both users var sql = "SELECT * FROM game where id = " + gameid; var rs = Server.Createobject("adodb.recordset"); rs.Open(sql, conn); var rating1 = String(rs("user1rating")); var rating2 = String(rs("user2rating")); var user1 = String(rs("user1id")); var user2 = String(rs("user2id")); if (rating1 != "null" && rating1 != "") { sql = "UPDATE [user] SET rating = rating - " + rating1 + " WHERE id = " + user1; conn.Execute(sql); sql = "UPDATE [user] SET rating = rating - " + rating2 + " WHERE id = " + user2; conn.Execute(sql); } if (action == "reset") { sql = "UPDATE game SET gamestatusid = 2, user1rating = 0, user2rating = 0 WHERE id = " + gameid; conn.Execute(sql); sql = "DELETE FROM gamenegotiation WHERE gameid = " + gameid + " AND messageid > 5"; conn.Execute(sql); } if (action == "delete") { sql = "DELETE FROM game WHERE id = " + gameid; conn.Execute(sql); sql = "DELETE FROM gamenegotiation WHERE gameid = " + gameid; conn.Execute(sql); Response.redirect("default.asp"); } } //get game details var rs = Server.CreateObject("adodb.recordset"); var sql = "select *, (select username from [user] where user1id = user.id) as user1name, "; sql += "(select username from [user] where user2id = user.id) as user2name from "; sql += "((((((game inner join gamenegotiation on game.id = gamenegotiation.gameid) "; sql += "inner join gamestatus on game.gamestatusid = gamestatus.id) "; sql += "inner join gameversion on game.gameversionid = gameversion.id) "; sql += "inner join gametype1 on game.gametype1id = gametype1.id) "; sql += "inner join gametype2 on game.gametype2id = gametype2.id) "; sql += "inner join maptype on game.maptypeid = maptype.id) "; sql += "where game.id = " + Request.QueryString("gameid"); sql += " and gamenegotiation.id in "; sql += "(select top 1 id from gamenegotiation where gameid = game.id order by [timestamp] desc)"; rs.Open(sql, conn); var content = ""; content += "\n"; content += "\n"; content += "
\n"; content += "

Game details

\n"; //date content += "\n"; content += "\n"; content += String(rs("user1name")); content += "\n"; content += " vs. "; content += "\n"; content += String(rs("user2name")); content += "\n"; content += " ("; if (String(rs("gamestatus.id")) == 3) content += dateToScreen(String(rs("completetime"))); else content += dateToScreen(String(rs("createtime"))); content += ")

\n"; //result content += "Result: \n"; winnerid = String(rs("winnerid")); if (String(rs("gamestatus.id")) == 3) { content += "\n"; if (String(rs("user1id")) == winnerid) content += rs("user1name") + " wins"; else if (String(rs("user2id")) == winnerid) content += rs("user2name") + " wins"; else content += "Draw"; content += "\n"; content += " (in " + rs("duration") + " turns, city count: " + rs("user1citycount") + "-" + rs("user2citycount") + ")"; } else { content += " - "; } content += "

\n"; //status content += "Status: " + String(rs("gamestatus.name")); var accept = "Accept "; var messageid = String(rs("messageid")); var muserid = String(rs("userid")); var messageid = String(rs("messageid")); var muserid = String(rs("userid")); var usersgame = (String(rs("user1id")) == Session("userid") || String(rs("user2id")) == Session("userid")); if (String(rs("gamestatusid")) == "2" && usersgame) { content += " \n \n"; } if (messageid == 1 || messageid == 2 || messageid == 4 || messageid == 5) { if (muserid != Session("userid") && usersgame) { // } else content += " - awaiting opponents accept"; } if (messageid == 7) { if (muserid == String(rs("user1id"))) content += " - declined by " + rs("user1name"); else content += " - declined by " + rs("user2name"); } content += "

\n"; content += "Game details:\n"; content += "\n"; content += "\n"; content += "\n"; content += "\n"; content += "\n"; content += "\n"; content += "\n"; content += "\n"; content += "\n"; content += " \n"; content += " \n"; content += " \n"; content += " \n"; content += "\n"; content += "\n"; content += "\n"; content += "\n"; content += " \n"; content += " \n"; content += " \n"; content += " \n"; content += " \n"; content += " \n"; content += "
\n"; content += "Version: "; content += "\n"; content += String(rs("gameversion.name")); content += "
\n"; content += "Type: "; content += "\n"; content += rs("gametype1.name") + "/" + rs("gametype2.name"); content += "
\n"; content += " Rated game:"; content += " \n"; if (String(rs("rated")) == "1") content += "Yes"; else content += "No"; content += "
\n"; content += "Map: "; content += "\n"; content += rs("mapwidth") + "x" + rs("mapheight") + " - " + rs("maptype.name"); content += "
\n"; content += " Players comments:"; content += "
\n"; content += prepScreen(rs("description")); content += "
\n"; if (messageid == 1 || messageid == 2 || messageid == 4 || messageid == 5) { if (muserid != Session("userid") && usersgame) { content += " \n \n"; content += " \n \n"; if (messageid == 1) content += " \n \n"; } } if (Session("admin")) { content += "











\nReset game
\n"; content += "Delete game
\n"; } content += "
\n"; var title = "Game details"; pageTemplate(content, title); %>