From 16e4c28516346ad3f1246417f56d289abe8bec56 Mon Sep 17 00:00:00 2001 From: Gregoo Date: Tue, 4 Feb 2025 12:34:19 +0100 Subject: [PATCH] Continue separation of state and value --- bricktracker/metadata_list.py | 11 ++++++++++- bricktracker/set_storage_list.py | 4 ++-- bricktracker/views/set.py | 2 +- templates/macro/form.html | 2 +- 4 files changed, 14 insertions(+), 5 deletions(-) diff --git a/bricktracker/metadata_list.py b/bricktracker/metadata_list.py index 60bfb5f..3b98a13 100644 --- a/bricktracker/metadata_list.py +++ b/bricktracker/metadata_list.py @@ -28,8 +28,9 @@ class BrickMetadataList(BrickRecordList[T]): # Queries select_query: str - # Set state endpoint + # Set endpoints set_state_endpoint: str + set_value_endpoint: str def __init__( self, @@ -149,3 +150,11 @@ class BrickMetadataList(BrickRecordList[T]): cls.set_state_endpoint, id=id, ) + + # URL to change the selected value of this metadata item for a set + @classmethod + def url_for_set_value(cls, id: str, /) -> str: + return url_for( + cls.set_value_endpoint, + id=id, + ) diff --git a/bricktracker/set_storage_list.py b/bricktracker/set_storage_list.py index 8453f36..77be716 100644 --- a/bricktracker/set_storage_list.py +++ b/bricktracker/set_storage_list.py @@ -17,8 +17,8 @@ class BrickSetStorageList(BrickMetadataList[BrickSetStorage]): select_query = 'set/metadata/storage/list' all_query = 'set/metadata/storage/all' - # Set state endpoint - set_state_endpoint: str = 'set.update_storage' + # Set value endpoint + set_value_endpoint: str = 'set.update_storage' # Load all storages @classmethod diff --git a/bricktracker/views/set.py b/bricktracker/views/set.py index 66a2a50..7f397da 100644 --- a/bricktracker/views/set.py +++ b/bricktracker/views/set.py @@ -66,7 +66,7 @@ def update_status(*, id: str, metadata_id: str) -> Response: return jsonify({'value': state}) -# Change the state of a storage +# Change the value of storage @set_page.route('//storage', methods=['POST']) @login_required @exception_handler(__file__, json=True) diff --git a/templates/macro/form.html b/templates/macro/form.html index 6fb3890..45ec2b5 100644 --- a/templates/macro/form.html +++ b/templates/macro/form.html @@ -48,7 +48,7 @@ {% if icon %}{% endif %}