def __init__(self, request): print "View.__init__" self.request = request # Get the grid matching the user cookie. if 'player_id' not in self.request.session: # size, and mines can be read dynamically size = 10 mines = 3 board = swp.create_board(size, mines) print(board) uid = str(uuid.uuid4()) self.request.session['player_id'] = uid MineSweeperView.users[uid] = board print "New player_id:", self.request.session print "Minefield :", MineSweeperView.users[uid] elif self.request.session['player_id'] not in MineSweeperView.users: print "Old player_id exists but not match what's in memory:", \ self.request.session['player_id'] uid = self.request.session['player_id'] size = 10 mines = 3 board = swp.create_board(size, mines) print(board) MineSweeperView.users[uid] = board print "Setting new player_id:", self.request.session print "Minefield :", MineSweeperView.users[uid] else: uid = self.request.session['player_id'] print "Old player_id exists:", self.request.session['player_id'] print "Minefield :", MineSweeperView.users[uid]
def newgame(self): # Discard existing game, if any print "View.newgame", self uid = self.request.session['player_id'] size = 10 mines = int(self.request.json.get("num_mines")) MineSweeperView.users[uid] = swp.create_board(size, mines) board = MineSweeperView.users[uid] return {'minefield':board.to_list()}