From 66c0c23de9e7577084ddf68d8f808f045c3a149f Mon Sep 17 00:00:00 2001 From: giles Date: Tue, 24 Feb 2026 22:28:21 +0000 Subject: [PATCH] Add Art-DAG to coop nav-tree fragment Append synthetic artdag nav entry to blog's nav-tree handler so Art-DAG appears in the shared navigation across all 6 coop apps. Register artdag_url as Jinja global. Co-Authored-By: Claude Opus 4.6 --- blog/bp/fragments/routes.py | 13 ++++++++++++- blog/templates/fragments/nav_tree.html | 1 + shared/infrastructure/jinja_setup.py | 3 ++- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/blog/bp/fragments/routes.py b/blog/bp/fragments/routes.py index 86ac36a..1542698 100644 --- a/blog/bp/fragments/routes.py +++ b/blog/bp/fragments/routes.py @@ -36,7 +36,18 @@ def register(): app_name = request.args.get("app_name", "") path = request.args.get("path", "/") first_seg = path.strip("/").split("/")[0] - menu_items = await get_navigation_tree(g.s) + menu_items = list(await get_navigation_tree(g.s)) + + # Append Art-DAG as a synthetic nav entry (not a DB MenuNode) + class _NavItem: + __slots__ = ("slug", "label", "feature_image") + def __init__(self, slug, label, feature_image=None): + self.slug = slug + self.label = label + self.feature_image = feature_image + + menu_items.append(_NavItem("artdag", "art-dag")) + return await render_template( "fragments/nav_tree.html", menu_items=menu_items, diff --git a/blog/templates/fragments/nav_tree.html b/blog/templates/fragments/nav_tree.html index df41dc8..5c38335 100644 --- a/blog/templates/fragments/nav_tree.html +++ b/blog/templates/fragments/nav_tree.html @@ -8,6 +8,7 @@ 'events': events_url('/'), 'federation': federation_url('/'), 'account': account_url('/'), + 'artdag': artdag_url('/'), } %}