Activate UIUX V2 navigation for consultant and client pilots
This commit is contained in:
@@ -1,12 +1,2 @@
|
|||||||
<div class="mb-6 overflow-x-auto rounded-2xl border border-slate-200 bg-white p-2 shadow-soft">
|
{# UI/UX V2 Phase 1C — Client pilot. Existing URLs and visibility are preserved in the shared component. #}
|
||||||
<div class="flex min-w-max items-center gap-2">
|
{% include "ui/templates/components/client_navigation_v2.html" %}
|
||||||
{% set path = request.url.path %}
|
|
||||||
<a href="/client/dashboard" class="rounded-xl px-4 py-2 text-sm font-semibold transition {{ 'bg-brand-600 text-white' if path == '/client/dashboard' else 'text-slate-700 hover:bg-slate-100' }}">Overview</a>
|
|
||||||
<a href="/client/compliance" class="rounded-xl px-4 py-2 text-sm font-semibold transition {{ 'bg-brand-600 text-white' if path.startswith('/client/compliance') or path.startswith('/client/engagements') else 'text-slate-700 hover:bg-slate-100' }}">My Compliance</a>
|
|
||||||
<a href="/client/documents" class="rounded-xl px-4 py-2 text-sm font-semibold transition {{ 'bg-brand-600 text-white' if path.startswith('/client/documents') else 'text-slate-700 hover:bg-slate-100' }}">My Documents</a>
|
|
||||||
<a href="/client/messages" class="rounded-xl px-4 py-2 text-sm font-semibold transition {{ 'bg-brand-600 text-white' if path.startswith('/client/messages') else 'text-slate-700 hover:bg-slate-100' }}">My Messages</a>
|
|
||||||
<a href="/client/billing" class="rounded-xl px-4 py-2 text-sm font-semibold transition {{ 'bg-brand-600 text-white' if path.startswith('/client/billing') else 'text-slate-700 hover:bg-slate-100' }}">My Bills</a>
|
|
||||||
<a href="/client/profile" class="rounded-xl px-4 py-2 text-sm font-semibold transition {{ 'bg-brand-600 text-white' if path.startswith('/client/profile') else 'text-slate-700 hover:bg-slate-100' }}">My Profile</a>
|
|
||||||
<a href="/alerts" class="rounded-xl px-4 py-2 text-sm font-semibold transition {{ 'bg-brand-600 text-white' if path == '/alerts' else 'text-slate-700 hover:bg-slate-100' }}">My Alert</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="space-y-6">
|
<div class="space-y-6">
|
||||||
|
{% include "ui/templates/components/client_navigation_v2.html" %}
|
||||||
<section class="rounded-3xl bg-gradient-to-r from-brand-700 to-slate-900 p-6 text-white shadow-soft">
|
<section class="rounded-3xl bg-gradient-to-r from-brand-700 to-slate-900 p-6 text-white shadow-soft">
|
||||||
<div class="flex flex-col gap-4 md:flex-row md:items-center md:justify-between">
|
<div class="flex flex-col gap-4 md:flex-row md:items-center md:justify-between">
|
||||||
<div>
|
<div>
|
||||||
|
|||||||
@@ -1,14 +1,2 @@
|
|||||||
{% set path = request.url.path %}
|
{# UI/UX V2 Phase 1C — Consultant pilot. Existing URLs and visibility are preserved in the shared component. #}
|
||||||
<div class="mb-5 overflow-x-auto rounded-2xl border border-slate-200 bg-white p-2 shadow-soft">
|
{% include "ui/templates/components/consultant_navigation_v2.html" %}
|
||||||
<nav class="flex min-w-max gap-2 text-sm font-semibold">
|
|
||||||
<a href="/consultant/dashboard" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path == '/consultant/dashboard' else 'text-slate-700 hover:bg-slate-100' }}">Overview</a>
|
|
||||||
<a href="/consultant/work" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path.startswith('/consultant/work') or path.startswith('/consultant/assignments') else 'text-slate-700 hover:bg-slate-100' }}">My Work Board</a>
|
|
||||||
<a href="/consultant/communications" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path.startswith('/consultant/communications') else 'text-slate-700 hover:bg-slate-100' }}">My Messages</a>
|
|
||||||
<a href="/consultant/documents" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path.startswith('/consultant/documents') else 'text-slate-700 hover:bg-slate-100' }}">Shared Documents</a>
|
|
||||||
<a href="/consultant/service-requests" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path.startswith('/consultant/service-requests') else 'text-slate-700 hover:bg-slate-100' }}">Service Requests</a>
|
|
||||||
<a href="/consultant/managed-clients" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path.startswith('/consultant/managed-clients') else 'text-slate-700 hover:bg-slate-100' }}">Managed Clients</a>
|
|
||||||
<a href="/consultant/workspace" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path.startswith('/consultant/workspace') else 'text-slate-700 hover:bg-slate-100' }}">Workspace</a>
|
|
||||||
<a href="/consultant/profile" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path.startswith('/consultant/profile') else 'text-slate-700 hover:bg-slate-100' }}">My Profile</a>
|
|
||||||
<a href="/alerts" class="rounded-xl px-3 py-2 {{ 'bg-slate-900 text-white' if path.startswith('/alerts') else 'text-slate-700 hover:bg-slate-100' }}">My Alert</a>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
|
|||||||
@@ -0,0 +1,59 @@
|
|||||||
|
{#
|
||||||
|
UI/UX V2 Phase 1C — Client pilot navigation
|
||||||
|
|
||||||
|
This component preserves the existing client portal URLs and visibility.
|
||||||
|
It changes presentation only and does not grant access, change routes, or
|
||||||
|
replace the client dashboard's existing AJAX content tabs.
|
||||||
|
#}
|
||||||
|
{% set _client_path = request.url.path %}
|
||||||
|
{% set navigation_aria_label_v2 = 'Client workspace navigation' %}
|
||||||
|
{% set navigation_items_v2 = [
|
||||||
|
{
|
||||||
|
'label': 'Dashboard',
|
||||||
|
'url': '/client/dashboard',
|
||||||
|
'visible': true,
|
||||||
|
'active': _client_path == '/client/dashboard'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Compliance',
|
||||||
|
'url': '/client/compliance',
|
||||||
|
'visible': true,
|
||||||
|
'active': _client_path.startswith('/client/compliance') or _client_path.startswith('/client/engagements')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Documents',
|
||||||
|
'url': '/client/documents',
|
||||||
|
'visible': true,
|
||||||
|
'active': _client_path.startswith('/client/documents')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Messages',
|
||||||
|
'url': '/client/messages',
|
||||||
|
'visible': true,
|
||||||
|
'active': _client_path.startswith('/client/messages')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Bills & Payments',
|
||||||
|
'url': '/client/billing',
|
||||||
|
'visible': true,
|
||||||
|
'active': _client_path.startswith('/client/billing')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Profile',
|
||||||
|
'url': '/client/profile',
|
||||||
|
'visible': true,
|
||||||
|
'active': _client_path.startswith('/client/profile')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Alerts',
|
||||||
|
'url': '/alerts',
|
||||||
|
'visible': true,
|
||||||
|
'active': _client_path.startswith('/alerts'),
|
||||||
|
'badge': unread_alert_count if unread_alert_count is defined and unread_alert_count > 0 else none
|
||||||
|
}
|
||||||
|
] %}
|
||||||
|
|
||||||
|
<div class="mb-6 overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-soft" data-uiux-v2-pilot="client">
|
||||||
|
{% include "ui/templates/components/navigation_v2.html" %}
|
||||||
|
{% include "ui/templates/components/mobile_navigation_v2.html" %}
|
||||||
|
</div>
|
||||||
@@ -0,0 +1,71 @@
|
|||||||
|
{#
|
||||||
|
UI/UX V2 Phase 1C — Consultant pilot navigation
|
||||||
|
|
||||||
|
This component preserves the existing consultant portal URLs and visibility.
|
||||||
|
It changes presentation only and does not grant access, change routes, or
|
||||||
|
replace the consultant dashboard's existing AJAX content tabs.
|
||||||
|
#}
|
||||||
|
{% set _consultant_path = request.url.path %}
|
||||||
|
{% set navigation_aria_label_v2 = 'Consultant workspace navigation' %}
|
||||||
|
{% set navigation_items_v2 = [
|
||||||
|
{
|
||||||
|
'label': 'Dashboard',
|
||||||
|
'url': '/consultant/dashboard',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path == '/consultant/dashboard'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Work',
|
||||||
|
'url': '/consultant/work',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path.startswith('/consultant/work') or _consultant_path.startswith('/consultant/assignments')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Messages',
|
||||||
|
'url': '/consultant/communications',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path.startswith('/consultant/communications')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Documents',
|
||||||
|
'url': '/consultant/documents',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path.startswith('/consultant/documents')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Service Requests',
|
||||||
|
'url': '/consultant/service-requests',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path.startswith('/consultant/service-requests')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Managed Clients',
|
||||||
|
'url': '/consultant/managed-clients',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path.startswith('/consultant/managed-clients')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Workspace',
|
||||||
|
'url': '/consultant/workspace',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path.startswith('/consultant/workspace')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Profile',
|
||||||
|
'url': '/consultant/profile',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path.startswith('/consultant/profile')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Alerts',
|
||||||
|
'url': '/alerts',
|
||||||
|
'visible': true,
|
||||||
|
'active': _consultant_path.startswith('/alerts'),
|
||||||
|
'badge': unread_alert_count if unread_alert_count is defined and unread_alert_count > 0 else none
|
||||||
|
}
|
||||||
|
] %}
|
||||||
|
|
||||||
|
<div class="mb-6 overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-soft" data-uiux-v2-pilot="consultant">
|
||||||
|
{% include "ui/templates/components/navigation_v2.html" %}
|
||||||
|
{% include "ui/templates/components/mobile_navigation_v2.html" %}
|
||||||
|
</div>
|
||||||
Reference in New Issue
Block a user