Ejemplo n.º 1
0
 def post(self, **kwargs):
     pin = str(json.loads(self.request.get('json'))['pin'])
     game = PreGame.query().filter(PreGame.pin == pin).get()
     if game is None:
         self.error(404)
     else:
         if not game.can_update:
             self.response.write(
                 json.dumps({
                     'game_id': game.key.urlsafe(),
                     'status': 'started',
                     'version': json.loads(game.game_json)['version']
                 }))
             self.error(410)
         else:
             game.device_ids.append(self.device_id)
             key_db = game.put()
             game_struct = json.loads(game.game_json)
             CurrentGame.set_current_game(self.device_id, key_db.urlsafe())
             response_struct = {
                 "id":
                 key_db.urlsafe(),
                 "version":
                 game_struct['version'],
                 "game":
                 json.loads(
                     PreGame.delete_last_updates_from_json(game.game_json))
             }
             self.response.write(json.dumps(response_struct))
Ejemplo n.º 2
0
 def post(self, **kwargs):
     game = json.loads(self.request.get('json'))
     game['pin'] = str(random.randint(100000000, 999999999))
     if 'version' not in game:
         game['version'] = 0
     for player in game['players']:
         player['last_update'] = game['version']
     game['words_last_update'] = game['version']
     game['order_last_update'] = game['version']
     game['meta']['last_update'] = game['version']
     game['players_deleted'] = []
     game_db = PreGame(game_json=json.dumps(game),
                       device_ids=[self.device_id],
                       pin=game['pin'],
                       can_update=True)
     key = game_db.put()
     game['id'] = key.urlsafe()
     game_db.game_json = json.dumps(game)
     game_db.put()
     CurrentGame.set_current_game(self.device_id, key.urlsafe(), True)
     self.response.write(
         json.dumps({
             'id': key.urlsafe(),
             'pin': game['pin'],
             'version': game['version']
         }))
Ejemplo n.º 3
0
 def post(self, **kwargs):
     game = json.loads(self.request.get('json'))
     game['pin'] = str(random.randint(100000000, 999999999))
     if 'version' not in game:
         game['version'] = 0
     for player in game['players']:
         player['last_update'] = game['version']
     game['words_last_update'] = game['version']
     game['order_last_update'] = game['version']
     game['meta']['last_update'] = game['version']
     game['players_deleted'] = []
     game_db = PreGame(game_json=json.dumps(game), device_ids=[self.device_id], pin=game['pin'], can_update=True)
     key = game_db.put()
     game['id'] = key.urlsafe()
     game_db.game_json = json.dumps(game)
     game_db.put()
     CurrentGame.set_current_game(self.device_id, key.urlsafe(), True)
     self.response.write(json.dumps({'id': key.urlsafe(), 'pin': game['pin'], 'version': game['version']}))
Ejemplo n.º 4
0
 def post(self, **kwargs):
     pin = str(json.loads(self.request.get('json'))['pin'])
     game = PreGame.query().filter(PreGame.pin == pin).get()
     if game is None:
         self.error(404)
     else:
         if not game.can_update:
             self.response.write(json.dumps({
                 'game_id': game.key.urlsafe(),
                 'status': 'started',
                 'version': json.loads(game.game_json)['version']
             }))
             self.error(410)
         else:
             game.device_ids.append(self.device_id)
             key_db = game.put()
             game_struct = json.loads(game.game_json)
             CurrentGame.set_current_game(self.device_id, key_db.urlsafe())
             response_struct = {"id": key_db.urlsafe(),
                                "version": game_struct['version'],
                                "game": json.loads(PreGame.delete_last_updates_from_json(game.game_json))}
             self.response.write(json.dumps(response_struct))
Ejemplo n.º 5
0
 def get(self, **kwargs):
     game_id = CurrentGame.get_current_game(self.device_id)
     if game_id is None:
         self.response.write(json.dumps([]))
     else:
         self.response.write(json.dumps([game_id]))
Ejemplo n.º 6
0
 def get(self, **kwargs):
     game_id = CurrentGame.get_current_game(self.device_id)
     if game_id is None:
         self.response.write(json.dumps([]))
     else:
         self.response.write(json.dumps([game_id]))