from mod_python import * import psql,helper,login def display_game_creation_form(req,sessionid,username): """ prints a html form with multiple drop-down lists for choosing players, goban size and so on. gets a mod_python request, prints to req.write. """ data = helper.header() p1data = create_user_dropdown_list("player1",username) p2data = create_user_dropdown_list("player2") gobansize = create_goban_size_dropdown_list("gobansize") #start form #choose player one (black),choose player two (white),choose goban size #'hidden' session id and username data += """
""" % (p1data,p2data,gobansize,sessionid,username) data+=helper.footer() req.write(data) def process_creation_form(req,form): """ validates and processes the game creation form. If everything was ok, a game will be created. """ player1 = form["player1"] player2 = form["player2"] username = form["username"] #check if at least one of the players is the current user if (player1 == username) or (player2 == username): #create game gamename = psql.create_goban_table(player1,player2,int(form["gobansize"])) #update entries for player one and player two for player in [player1,player2]: gameslot = psql.get_free_game_slot(player) if gameslot != "": psql.set_game_slot(player,gameslot,gamename) else:#should not happen: no free game slot. #print error msg req.write("Error: No free game slots for player "+player+"!") #display form again display_game_creation_form(req,form["sessionid"],username) #TODO:game created, now display game overview form login.game_overview_form(req,form) else: #give error message req.write("Sorry, you must be one of the players!