def get_game_or_abort(game_id): if game_id == 'current': game = Game.current() else: game = Game.query.get(game_id) if not game: abort(404, 'Game not found') return game
def game(): device_id = request.cookies.get('device_id') device = Device.query.get(device_id) if not device: abort(404, 'Device not found') game = Game.current() player = Player.current(device_id) response = make_response(render_template('scoring.html')) return response
def games_create(): current_game = Game.current() if current_game: abort(403, 'Game %s is in progress' % current_game.id) new_game = Game() db.session.add(new_game) db.session.commit() response = jsonate(new_game.to_dict()) response.status_code = 201 response.headers['Location'] = url_for('games_get', game_id=new_game.id) return response
def game_info(): if not request.cookies.get('device_id'): abort(404, 'Device not found') device_id = request.cookies.get('device_id') device = Device.query.get(device_id) if not device: abort(404, 'Device not found') game = Game.current() player = Player.current(device_id) ret = dict(game=game.to_dict(), player=player.to_dict(), device=device.to_dict()) response = jsonate(ret) return response
def game_join(): device_id = request.cookies.get('device_id') device = Device.query.get(device_id) if not device: abort(403, 'No device found') player = Player.current(device.id) if player: return redirect('/game', code=302) current_game = Game.current() if not current_game: abort(404, 'No current game') game = get_game_manager() game.create_player(device) return redirect('/game', code=302)
def game_current(): game = Game.current() return jsonate(game.to_dict())