From 03dacd9957ecc955f10d4448d1b4805c750a5e13 Mon Sep 17 00:00:00 2001 From: Lance Edgar Date: Sat, 30 May 2026 20:37:20 -0500 Subject: [PATCH 1/2] fix: sort related assets field when viewing a log --- src/wuttafarm/web/forms/widgets.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/wuttafarm/web/forms/widgets.py b/src/wuttafarm/web/forms/widgets.py index db79eae..6897660 100644 --- a/src/wuttafarm/web/forms/widgets.py +++ b/src/wuttafarm/web/forms/widgets.py @@ -667,10 +667,17 @@ class AssetRefsWidget(Widget): readonly = kw.get("readonly", self.readonly) if readonly: + assets = [] for uuid in cstruct or []: - asset = session.get(model.Asset, uuid) - assets.append( + if asset := session.get(model.Asset, uuid): + assets.append(asset) + + assets.sort(key=lambda asset: asset.asset_name) + + html = [] + for asset in assets: + html.append( HTML.tag( "li", c=tags.link_to( @@ -681,7 +688,8 @@ class AssetRefsWidget(Widget): ), ) ) - return HTML.tag("ul", c=assets) + + return HTML.tag("ul", c=html) values = kw.get("values", self.values) if not isinstance(values, sequence_types): From a26f16a67e1d246ee12a7096be730cb8ba97c5ea Mon Sep 17 00:00:00 2001 From: Lance Edgar Date: Sat, 30 May 2026 20:52:06 -0500 Subject: [PATCH 2/2] fix: fix Location column for All Logs subgrid when viewing Asset --- src/wuttafarm/web/views/assets.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/wuttafarm/web/views/assets.py b/src/wuttafarm/web/views/assets.py index 1ada778..27bb925 100644 --- a/src/wuttafarm/web/views/assets.py +++ b/src/wuttafarm/web/views/assets.py @@ -103,6 +103,7 @@ class AssetMasterView(WuttaFarmMasterView): row_labels = { "message": "Log Name", + "locations": "Location", } row_grid_columns = [ @@ -112,7 +113,7 @@ class AssetMasterView(WuttaFarmMasterView): "message", "log_type", "assets", - "location", + "locations", "quantity", "is_group_assignment", ] @@ -446,6 +447,9 @@ class AssetMasterView(WuttaFarmMasterView): # assets g.set_renderer("assets", self.render_assets_for_grid) + # locations + g.set_renderer("locations", self.render_assets_for_grid) + def render_assets_for_grid(self, log, field, value): assets = getattr(log, field)