Feat: Decks page.

This commit is contained in:
2026-02-16 19:30:31 +00:00
parent 1cd9b7c976
commit 5661632540
75 changed files with 11850 additions and 536 deletions

View File

@@ -13,6 +13,7 @@ MTG Game Page Controller.
# IMPORTS
# internal
from business_objects.api import API
from business_objects.tcg.mtg_deck import MTG_Deck
from business_objects.tcg.mtg_game import MTG_Game
from business_objects.tcg.mtg_game_player import MTG_Game_Player, Parameters_MTG_Game_Player
from business_objects.tcg.mtg_game_round import MTG_Game_Round, Parameters_MTG_Game_Round
@@ -21,9 +22,10 @@ from business_objects.tcg.mtg_deck import MTG_Deck, Parameters_MTG_Deck
from business_objects.tcg.user import User, Parameters_User
from datastores.datastore_mtg import DataStore_MTG
from datastores.datastore_user import DataStore_User
from forms.tcg.game import Filters_MTG_Game
from forms.tcg.game import Filters_MTG_Game, Filters_MTG_Deck
from helpers.helper_app import Helper_App
from models.model_view_mtg_base import Model_View_MTG_Base
from models.model_view_mtg_decks import Model_View_MTG_Decks
from models.model_view_mtg_game import Model_View_MTG_Game
from models.model_view_mtg_games import Model_View_MTG_Games
from models.model_view_mtg_home import Model_View_MTG_Home
@@ -373,3 +375,28 @@ def save_game_round_player_damage():
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_PAGE_MTG_DECKS, methods=['GET'])
def decks():
Helper_App.console_log('mtg decks')
Helper_App.console_log(f'request_args: {request.args}')
try:
form_filters = Filters_MTG_Deck.from_json(request.args)
except Exception as e:
Helper_App.console_log(f'Error: {e}')
form_filters = Filters_MTG_Deck()
Helper_App.console_log(f'form_filters={form_filters}')
datastore = DataStore_MTG()
user_session = datastore.get_user_session()
if not user_session.get_is_logged_in():
return redirect(url_for('routes_mtg_game.home'))
parameters_deck = form_filters.to_parameters()
model = Model_View_MTG_Decks(parameters_deck = parameters_deck)
model.form_filters = form_filters
Helper_App.console_log(f'form_filters={form_filters}')
return render_template('pages/tcg/mtg/_decks.html', model=model)