From ddfcef4f71f59a11e57f116d52e9497e09e9cde5 Mon Sep 17 00:00:00 2001 From: A R R R Associates Date: Sat, 11 Jul 2026 07:22:13 +0530 Subject: [PATCH] Unify Firm Admin navigation and align full-width header --- .../firm_admin_dashboard/dashboard.html | 138 +++++++++--------- .../components/firm_admin_navigation_v2.html | 73 ++++++++- .../components/top_workspace_bar.html | 8 +- 3 files changed, 143 insertions(+), 76 deletions(-) diff --git a/app/modules/firm_admin_dashboard/templates/firm_admin_dashboard/dashboard.html b/app/modules/firm_admin_dashboard/templates/firm_admin_dashboard/dashboard.html index 1d2a163..8d62038 100644 --- a/app/modules/firm_admin_dashboard/templates/firm_admin_dashboard/dashboard.html +++ b/app/modules/firm_admin_dashboard/templates/firm_admin_dashboard/dashboard.html @@ -17,80 +17,88 @@ - {% set tabs = [ - ('overview','Overview'), - ('branches','Branches'), - ('users','Users & Roles'), - ('firm-settings','Firm Settings'), - ('services','Services Setup'), - ('financial-years','Financial Years'), - ('reports','Reports'), - ('wizards','Wizards'), - ('audit-logs','Audit Logs') - ] %} - + {# Dashboard sections are now part of the unified Firm Admin Dashboard submenu. #} -
- - - - - Dashboard Menu - - Firm administration sections - -
- {% for code, label in tabs %} - - {% endfor %} -
-
- -
- {% include "modules/firm_admin_dashboard/templates/firm_admin_dashboard/partials/" ~ active_tab ~ ".html" ignore missing %} +
+
Loading dashboard...
{% endblock %} - diff --git a/app/ui/templates/components/firm_admin_navigation_v2.html b/app/ui/templates/components/firm_admin_navigation_v2.html index a7dd49b..435fd51 100644 --- a/app/ui/templates/components/firm_admin_navigation_v2.html +++ b/app/ui/templates/components/firm_admin_navigation_v2.html @@ -1,15 +1,26 @@ {# - UI/UX V2 Phase 1E — Firm Admin workspace navigation. - Presentation only: existing URLs and route-level permissions remain authoritative. + UI/UX V2 Phase 1E.1 — Unified Firm Admin navigation. + Presentation only. Existing routes and route-level permissions remain authoritative. #} {% set _firm_admin_path = request.url.path %} +{% set _firm_admin_tab = request.query_params.get('tab', 'overview') %} {% set navigation_aria_label_v2 = 'Firm administration navigation' %} {% set navigation_items_v2 = [ { 'label': 'Dashboard', - 'url': '/firm-admin/dashboard', 'visible': true, - 'active': _firm_admin_path.startswith('/firm-admin/dashboard') + 'active': _firm_admin_path.startswith('/firm-admin/dashboard'), + 'children': [ + {'label': 'Overview', 'url': '/firm-admin/dashboard?tab=overview', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'overview'}, + {'label': 'Branches', 'url': '/firm-admin/dashboard?tab=branches', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'branches'}, + {'label': 'Users & Roles', 'url': '/firm-admin/dashboard?tab=users', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'users'}, + {'label': 'Firm Settings', 'url': '/firm-admin/dashboard?tab=firm-settings', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'firm-settings'}, + {'label': 'Services Setup', 'url': '/firm-admin/dashboard?tab=services', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'services'}, + {'label': 'Financial Years', 'url': '/firm-admin/dashboard?tab=financial-years', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'financial-years'}, + {'label': 'Reports', 'url': '/firm-admin/dashboard?tab=reports', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'reports'}, + {'label': 'Wizards', 'url': '/firm-admin/dashboard?tab=wizards', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'wizards'}, + {'label': 'Audit Logs', 'url': '/firm-admin/dashboard?tab=audit-logs', 'active': _firm_admin_path.startswith('/firm-admin/dashboard') and _firm_admin_tab == 'audit-logs'} + ] }, { 'label': 'Clients', @@ -25,7 +36,7 @@ { 'label': 'Services', 'visible': true, - 'active': _firm_admin_path.startswith('/services'), + 'active': _firm_admin_path.startswith('/services') and not _firm_admin_path.startswith('/services/engagements'), 'children': [ {'label': 'Firm Services', 'url': '/services', 'active': _firm_admin_path == '/services'}, {'label': 'Service Catalogue', 'url': '/services/catalogue', 'active': _firm_admin_path.startswith('/services/catalogue')}, @@ -68,13 +79,15 @@ { 'label': 'Firm Setup', 'visible': true, - 'active': _firm_admin_path.startswith('/system-settings') or _firm_admin_path.startswith('/firm-admin/users'), + 'active': _firm_admin_path.startswith('/system-settings') or _firm_admin_path.startswith('/email/settings'), 'children': [ {'label': 'Settings Dashboard', 'url': '/system-settings', 'active': _firm_admin_path == '/system-settings'}, {'label': 'Branches', 'url': '/system-settings/branches', 'active': _firm_admin_path.startswith('/system-settings/branches')}, {'label': 'Users', 'url': '/system-settings/users', 'active': _firm_admin_path.startswith('/system-settings/users')}, + {'label': 'Roles & Permissions', 'url': '/system-settings/rbac/roles', 'active': _firm_admin_path.startswith('/system-settings/rbac')}, {'label': 'Financial Years', 'url': '/system-settings/financial-years', 'active': _firm_admin_path.startswith('/system-settings/financial-years')}, {'label': 'Branding', 'url': '/system-settings/branding', 'active': _firm_admin_path.startswith('/system-settings/branding')}, + {'label': 'Firm Email Settings', 'url': '/email/settings', 'active': _firm_admin_path.startswith('/email/settings')}, {'label': 'Audit Logs', 'url': '/system-settings/audit-logs', 'active': _firm_admin_path.startswith('/system-settings/audit-logs')} ] }, @@ -87,7 +100,53 @@ } ] %} -
+
{% include "ui/templates/components/navigation_v2.html" %} {% include "ui/templates/components/mobile_navigation_v2.html" %}
+ + diff --git a/app/ui/templates/components/top_workspace_bar.html b/app/ui/templates/components/top_workspace_bar.html index 3204eec..57528cf 100644 --- a/app/ui/templates/components/top_workspace_bar.html +++ b/app/ui/templates/components/top_workspace_bar.html @@ -1,7 +1,7 @@ -{% set _uiux_system_admin_header = 'System Admin' in (ui_roles|default([], true)) %} -
-
-
+{% set _uiux_full_width_header = ('System Admin' in (ui_roles|default([], true))) or ('Firm Admin' in (ui_roles|default([], true))) %} +
+