Add helper to produce the set metadata lists
This commit is contained in:
parent
b0c7cd7da5
commit
82b744334f
@ -1,11 +1,14 @@
|
||||
from typing import Any, Self
|
||||
from typing import Any, Self, Union
|
||||
|
||||
from flask import current_app
|
||||
|
||||
from .record_list import BrickRecordList
|
||||
from .set_owner import BrickSetOwner
|
||||
from .set_owner_list import BrickSetOwnerList
|
||||
from .set_status_list import BrickSetStatusList
|
||||
from .set_storage import BrickSetStorage
|
||||
from .set_storage_list import BrickSetStorageList
|
||||
from .set_tag import BrickSetTag
|
||||
from .set_tag_list import BrickSetTagList
|
||||
from .set import BrickSet
|
||||
|
||||
@ -163,3 +166,22 @@ class BrickSetList(BrickRecordList[BrickSet]):
|
||||
self.list(override_query=self.using_storage_query)
|
||||
|
||||
return self
|
||||
|
||||
|
||||
# Helper to build the metadata lists
|
||||
def set_metadata_lists(
|
||||
as_class: bool = False
|
||||
) -> dict[
|
||||
str,
|
||||
Union[
|
||||
list[BrickSetOwner],
|
||||
list[BrickSetStorage],
|
||||
BrickSetStorageList,
|
||||
list[BrickSetTag]
|
||||
]
|
||||
]:
|
||||
return {
|
||||
'brickset_owners': BrickSetOwnerList.list(),
|
||||
'brickset_storages': BrickSetStorageList.list(as_class=as_class),
|
||||
'brickset_tags': BrickSetTagList.list(),
|
||||
}
|
||||
|
@ -3,9 +3,7 @@ from flask_login import login_required
|
||||
|
||||
from ..configuration_list import BrickConfigurationList
|
||||
from .exceptions import exception_handler
|
||||
from ..set_owner_list import BrickSetOwnerList
|
||||
from ..set_storage_list import BrickSetStorageList
|
||||
from ..set_tag_list import BrickSetTagList
|
||||
from ..set_list import set_metadata_lists
|
||||
from ..socket import MESSAGES
|
||||
|
||||
add_page = Blueprint('add', __name__, url_prefix='/add')
|
||||
@ -20,12 +18,10 @@ def add() -> str:
|
||||
|
||||
return render_template(
|
||||
'add.html',
|
||||
brickset_owners=BrickSetOwnerList.list(),
|
||||
brickset_storages=BrickSetStorageList.list(),
|
||||
brickset_tags=BrickSetTagList.list(),
|
||||
path=current_app.config['SOCKET_PATH'],
|
||||
namespace=current_app.config['SOCKET_NAMESPACE'],
|
||||
messages=MESSAGES
|
||||
messages=MESSAGES,
|
||||
**set_metadata_lists()
|
||||
)
|
||||
|
||||
|
||||
@ -38,11 +34,9 @@ def bulk() -> str:
|
||||
|
||||
return render_template(
|
||||
'add.html',
|
||||
brickset_owners=BrickSetOwnerList.list(),
|
||||
brickset_storages=BrickSetStorageList.list(),
|
||||
brickset_tags=BrickSetTagList.list(),
|
||||
path=current_app.config['SOCKET_PATH'],
|
||||
namespace=current_app.config['SOCKET_NAMESPACE'],
|
||||
messages=MESSAGES,
|
||||
bulk=True
|
||||
bulk=True,
|
||||
**set_metadata_lists()
|
||||
)
|
||||
|
@ -2,11 +2,8 @@ from flask import Blueprint, render_template
|
||||
|
||||
from .exceptions import exception_handler
|
||||
from ..minifigure_list import BrickMinifigureList
|
||||
from ..set_owner_list import BrickSetOwnerList
|
||||
from ..set_status_list import BrickSetStatusList
|
||||
from ..set_storage_list import BrickSetStorageList
|
||||
from ..set_tag_list import BrickSetTagList
|
||||
from ..set_list import BrickSetList
|
||||
from ..set_list import BrickSetList, set_metadata_lists
|
||||
|
||||
index_page = Blueprint('index', __name__)
|
||||
|
||||
@ -18,9 +15,7 @@ def index() -> str:
|
||||
return render_template(
|
||||
'index.html',
|
||||
brickset_collection=BrickSetList().last(),
|
||||
brickset_owners=BrickSetOwnerList.list(),
|
||||
brickset_statuses=BrickSetStatusList.list(),
|
||||
brickset_storages=BrickSetStorageList.list(as_class=True),
|
||||
brickset_tags=BrickSetTagList.list(),
|
||||
minifigure_collection=BrickMinifigureList().last(),
|
||||
**set_metadata_lists(as_class=True)
|
||||
)
|
||||
|
@ -3,10 +3,7 @@ from flask import Blueprint, render_template
|
||||
from .exceptions import exception_handler
|
||||
from ..minifigure import BrickMinifigure
|
||||
from ..minifigure_list import BrickMinifigureList
|
||||
from ..set_owner_list import BrickSetOwnerList
|
||||
from ..set_list import BrickSetList
|
||||
from ..set_storage_list import BrickSetStorageList
|
||||
from ..set_tag_list import BrickSetTagList
|
||||
from ..set_list import BrickSetList, set_metadata_lists
|
||||
|
||||
minifigure_page = Blueprint('minifigure', __name__, url_prefix='/minifigures')
|
||||
|
||||
@ -31,7 +28,5 @@ def details(*, figure: str) -> str:
|
||||
using=BrickSetList().using_minifigure(figure),
|
||||
missing=BrickSetList().missing_minifigure(figure),
|
||||
damaged=BrickSetList().damaged_minifigure(figure),
|
||||
brickset_owners=BrickSetOwnerList.list(),
|
||||
brickset_storages=BrickSetStorageList.list(as_class=True),
|
||||
brickset_tags=BrickSetTagList.list(),
|
||||
**set_metadata_lists(as_class=True)
|
||||
)
|
||||
|
@ -4,10 +4,7 @@ from .exceptions import exception_handler
|
||||
from ..minifigure_list import BrickMinifigureList
|
||||
from ..part import BrickPart
|
||||
from ..part_list import BrickPartList
|
||||
from ..set_owner_list import BrickSetOwnerList
|
||||
from ..set_list import BrickSetList
|
||||
from ..set_storage_list import BrickSetStorageList
|
||||
from ..set_tag_list import BrickSetTagList
|
||||
from ..set_list import BrickSetList, set_metadata_lists
|
||||
|
||||
part_page = Blueprint('part', __name__, url_prefix='/parts')
|
||||
|
||||
@ -67,7 +64,5 @@ def details(*, part: str, color: int) -> str:
|
||||
),
|
||||
different_color=BrickPartList().with_different_color(brickpart),
|
||||
similar_prints=BrickPartList().from_print(brickpart),
|
||||
brickset_owners=BrickSetOwnerList.list(),
|
||||
brickset_storages=BrickSetStorageList.list(as_class=True),
|
||||
brickset_tags=BrickSetTagList.list(),
|
||||
**set_metadata_lists(as_class=True)
|
||||
)
|
||||
|
@ -16,7 +16,7 @@ from .exceptions import exception_handler
|
||||
from ..minifigure import BrickMinifigure
|
||||
from ..part import BrickPart
|
||||
from ..set import BrickSet
|
||||
from ..set_list import BrickSetList
|
||||
from ..set_list import BrickSetList, set_metadata_lists
|
||||
from ..set_owner_list import BrickSetOwnerList
|
||||
from ..set_status_list import BrickSetStatusList
|
||||
from ..set_storage_list import BrickSetStorageList
|
||||
@ -35,10 +35,8 @@ def list() -> str:
|
||||
return render_template(
|
||||
'sets.html',
|
||||
collection=BrickSetList().all(),
|
||||
brickset_owners=BrickSetOwnerList.list(),
|
||||
brickset_statuses=BrickSetStatusList.list(),
|
||||
brickset_storages=BrickSetStorageList.list(as_class=True),
|
||||
brickset_tags=BrickSetTagList.list(),
|
||||
**set_metadata_lists(as_class=True)
|
||||
)
|
||||
|
||||
|
||||
@ -145,10 +143,8 @@ def details(*, id: str) -> str:
|
||||
'set.html',
|
||||
item=BrickSet().select_specific(id),
|
||||
open_instructions=request.args.get('open_instructions'),
|
||||
brickset_owners=BrickSetOwnerList.list(),
|
||||
brickset_statuses=BrickSetStatusList.list(all=True),
|
||||
brickset_storages=BrickSetStorageList.list(as_class=True),
|
||||
brickset_tags=BrickSetTagList.list(),
|
||||
**set_metadata_lists(as_class=True)
|
||||
)
|
||||
|
||||
|
||||
|
@ -1,11 +1,9 @@
|
||||
from flask import Blueprint, render_template
|
||||
|
||||
from .exceptions import exception_handler
|
||||
from ..set_owner_list import BrickSetOwnerList
|
||||
from ..set_list import BrickSetList
|
||||
from ..set_list import BrickSetList, set_metadata_lists
|
||||
from ..set_storage import BrickSetStorage
|
||||
from ..set_storage_list import BrickSetStorageList
|
||||
from ..set_tag_list import BrickSetTagList
|
||||
|
||||
storage_page = Blueprint('storage', __name__, url_prefix='/storages')
|
||||
|
||||
@ -30,7 +28,5 @@ def details(*, id: str) -> str:
|
||||
'storage.html',
|
||||
item=storage,
|
||||
sets=BrickSetList().using_storage(storage),
|
||||
brickset_owners=BrickSetOwnerList.list(),
|
||||
brickset_storages=BrickSetStorageList.list(as_class=True),
|
||||
brickset_tags=BrickSetTagList.list(),
|
||||
**set_metadata_lists(as_class=True)
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user