import goban,helper,psql,login import string DEBUG = 1 def is_my_turn(req,form,gobandict): """ gets request and util.FiedStorage form. check wether or not the current this is the players turn. return true or false. """ #INFO: player1 is black,player2 is white. black starts the game. me = form["username"] player1 = gobandict["player1"] player2 = gobandict["player2"] #get turn_number. turn_number = gobandict["turn_number"] #if turn_number modulo 2 == 0: are we player two? # yes:return True, else return False if turn_number % 2 == 0: if me == player2: return True else: return False #else:are we player1? # yes:return True, else return False else: if me == player1: return True else: return False def main(req,form): """ display selected goban and manage user input. """ helper.debug(req,form,str(form.keys())+"
") try: gamename = form["game"] except: gamename = "" if gamename != "": #read goban table from database tmplist = psql.read_table(gamename) #make a dictionary out of the list gobandict = psql.fetchall_list_to_goban_dict(tmplist) #check if user has already clicked onto a field: foundx = False for item in form.keys(): if string.find(item,").x") > 0: foundx = True if foundx: if is_my_turn(req,form,gobandict): (gobandict,retstring) = goban.process_form(req,form,gobandict) #do stuff data = helper.header() data += "Turn number: "+str(gobandict["turn_number"])+". " #check whether its our turn #if yes: print 'your move' and display goban and process move #if not: print '...s move' and display goban. if is_my_turn(req,form,gobandict): data += ("Its your turn.
") else: data+= ("This is not your turn. You have to wait for the move of the other player.
") #print goban data += goban.display_goban(gobandict,req,form) data += login.navigation_bar(req,form) data += helper.footer() req.write(data) else: req.write('Error: You have to select a game to play it!')