Fix: Games and Game page save and navigation.
This commit is contained in:
@@ -92,8 +92,8 @@ def save_game():
|
||||
form_filters = Filters_MTG_Game.from_json(data.get(Model_View_MTG_Base.FLAG_FORM_FILTERS, {}))
|
||||
if not form_filters.validate_on_submit():
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Filters form invalid.\n{form_filters.errors}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Filters form invalid.\n{form_filters.errors}'
|
||||
})
|
||||
form_filters = Filters_MTG_Game.get_default()
|
||||
"""
|
||||
@@ -106,8 +106,8 @@ def save_game():
|
||||
games = data.get(Model_View_MTG_Base.FLAG_GAME, [])
|
||||
if len(games) == 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: 'No games to save.'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: 'No games to save.'
|
||||
})
|
||||
Helper_App.console_log(f"Games to save: {games}")
|
||||
|
||||
@@ -118,20 +118,18 @@ def save_game():
|
||||
|
||||
if len(errors) > 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error saving games.\n{Model_View_MTG_Game.convert_list_objects_to_json(errors)}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error saving games.\n{Model_View_MTG_Game.convert_list_objects_to_json(errors)}'
|
||||
})
|
||||
"""
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS,
|
||||
Model_View_MTG_Base.FLAG_DATA: Model_View_MTG_Base.convert_list_objects_to_json(model_return.games)
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS
|
||||
, Model_View_MTG_Base.ATTR_GAME_ID: game_id
|
||||
})
|
||||
"""
|
||||
return redirect(url_for('routes_mtg_game.game_detail', game_id = game_id))
|
||||
# return redirect(url_for('routes_mtg_game.game_detail', game_id = game_id))
|
||||
except Exception as e:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Bad data received by controller.\n{e}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Bad data received by controller.\n{e}'
|
||||
})
|
||||
|
||||
|
||||
@@ -155,13 +153,12 @@ def get_game_players(game_id):
|
||||
Helper_App.console_log(f'{_m}: game_id={game_id}')
|
||||
try:
|
||||
datastore = DataStore_MTG()
|
||||
datastore_user = DataStore_User()
|
||||
user_session = datastore.get_user_session()
|
||||
|
||||
if not user_session.get_is_logged_in():
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: 'User not logged in'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: 'User not logged in'
|
||||
}), 401
|
||||
|
||||
# Get players for this game
|
||||
@@ -172,21 +169,21 @@ def get_game_players(game_id):
|
||||
|
||||
if len(errors) > 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error fetching players: {errors}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error fetching players: {errors}'
|
||||
}), 500
|
||||
|
||||
players_json = [p.to_json() for p in players]
|
||||
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS,
|
||||
Model_View_MTG_Base.FLAG_DATA: players_json
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS
|
||||
, Model_View_MTG_Base.FLAG_DATA: players_json
|
||||
})
|
||||
except Exception as e:
|
||||
Helper_App.console_log(f'{_m} Error: {str(e)}')
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error: {str(e)}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error: {str(e)}'
|
||||
}), 500
|
||||
|
||||
|
||||
@@ -201,8 +198,8 @@ def get_many_game_round(game_id):
|
||||
|
||||
if not user_session.get_is_logged_in():
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: 'User not logged in'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: 'User not logged in'
|
||||
}), 401
|
||||
|
||||
# Get rounds for this game
|
||||
@@ -213,21 +210,21 @@ def get_many_game_round(game_id):
|
||||
|
||||
if len(errors) > 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error fetching rounds: {errors}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error fetching rounds: {errors}'
|
||||
}), 500
|
||||
|
||||
rounds_json = [r.to_json() for r in rounds]
|
||||
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS,
|
||||
Model_View_MTG_Base.FLAG_DATA: rounds_json
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS
|
||||
, Model_View_MTG_Base.FLAG_DATA: rounds_json
|
||||
})
|
||||
except Exception as e:
|
||||
Helper_App.console_log(f'{_m} Error: {str(e)}')
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error: {str(e)}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error: {str(e)}'
|
||||
}), 500
|
||||
|
||||
|
||||
@@ -242,8 +239,8 @@ def get_many_game_player_damage(game_id):
|
||||
|
||||
if not user_session.get_is_logged_in():
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: 'User not logged in'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: 'User not logged in'
|
||||
}), 401
|
||||
|
||||
parameters_damage = Parameters_MTG_Game_Round_Player_Damage.get_default(user_session.user_id)
|
||||
@@ -253,21 +250,21 @@ def get_many_game_player_damage(game_id):
|
||||
|
||||
if len(errors) > 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error fetching damage records: {errors}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error fetching damage records: {errors}'
|
||||
}), 500
|
||||
|
||||
damage_records = [d.to_json() for d in damages]
|
||||
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS,
|
||||
Model_View_MTG_Base.FLAG_DATA: damage_records
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS
|
||||
, Model_View_MTG_Base.FLAG_DATA: damage_records
|
||||
})
|
||||
except Exception as e:
|
||||
Helper_App.console_log(f'{_m} Error: {str(e)}')
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error: {str(e)}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error: {str(e)}'
|
||||
}), 500
|
||||
|
||||
|
||||
@@ -295,8 +292,8 @@ def save_game_player():
|
||||
players = data.get(Model_View_MTG_Base.FLAG_PLAYER, [])
|
||||
if len(players) == 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: 'No players to save.'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: 'No players to save.'
|
||||
})
|
||||
|
||||
objs_player = []
|
||||
@@ -308,18 +305,18 @@ def save_game_player():
|
||||
|
||||
if len(errors) > 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error saving players.\n{Model_View_MTG_Game.convert_list_objects_to_json(errors)}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error saving players.\n{Model_View_MTG_Game.convert_list_objects_to_json(errors)}'
|
||||
})
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS if success else Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_DATA: None
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS if success else Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_DATA: None
|
||||
})
|
||||
# return redirect(url_for('routes_mtg_game.game_detail', game_id = game_id))
|
||||
except Exception as e:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Bad data received by controller.\n{e}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Bad data received by controller.\n{e}'
|
||||
})
|
||||
|
||||
@routes_mtg_game.route(Model_View_MTG_Base.HASH_SAVE_MTG_GAME_ROUND_PLAYER_DAMAGE, methods=['POST'])
|
||||
@@ -336,8 +333,8 @@ def save_game_round_player_damage():
|
||||
rounds = data.get(Model_View_MTG_Base.FLAG_ROUND, [])
|
||||
if len(rounds) == 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: 'No rounds to save.'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: 'No rounds to save.'
|
||||
})
|
||||
|
||||
objs_round = []
|
||||
@@ -349,8 +346,8 @@ def save_game_round_player_damage():
|
||||
damages = data.get(Model_View_MTG_Base.FLAG_DAMAGE, [])
|
||||
if len(damages) == 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: 'No damages to save.'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: 'No damages to save.'
|
||||
})
|
||||
|
||||
objs_damage = []
|
||||
@@ -363,16 +360,16 @@ def save_game_round_player_damage():
|
||||
|
||||
if len(errors) > 0:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Error saving round player damages.\n{Model_View_MTG_Game.convert_list_objects_to_json(errors)}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Error saving round player damages.\n{Model_View_MTG_Game.convert_list_objects_to_json(errors)}'
|
||||
})
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS if success else Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_DATA: None
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_SUCCESS if success else Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_DATA: None
|
||||
})
|
||||
# return redirect(url_for('routes_mtg_game.game_detail', game_id = game_id))
|
||||
except Exception as e:
|
||||
return jsonify({
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE,
|
||||
Model_View_MTG_Base.FLAG_MESSAGE: f'Bad data received by controller.\n{e}'
|
||||
Model_View_MTG_Base.FLAG_STATUS: Model_View_MTG_Base.FLAG_FAILURE
|
||||
, Model_View_MTG_Base.FLAG_MESSAGE: f'Bad data received by controller.\n{e}'
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user