Example #1
0
    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]
Example #2
0
 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()}