firmwiz button
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
<!doctype html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
@@ -108,7 +108,7 @@
|
|||||||
{% if firm_branding.logo_url %}<img src="{{ firm_branding.logo_url }}" alt="{{ current_firm_name }} logo" class="h-11 w-11 rounded-2xl bg-white object-contain p-1 shadow-soft" />{% else %}<div class="flex h-11 w-11 items-center justify-center rounded-2xl bg-brand-500 font-bold text-white shadow-soft">{{ (current_firm_name[:2] if current_firm_name else 'AF')|upper }}</div>{% endif %}
|
{% if firm_branding.logo_url %}<img src="{{ firm_branding.logo_url }}" alt="{{ current_firm_name }} logo" class="h-11 w-11 rounded-2xl bg-white object-contain p-1 shadow-soft" />{% else %}<div class="flex h-11 w-11 items-center justify-center rounded-2xl bg-brand-500 font-bold text-white shadow-soft">{{ (current_firm_name[:2] if current_firm_name else 'AF')|upper }}</div>{% endif %}
|
||||||
<div class="min-w-0">
|
<div class="min-w-0">
|
||||||
<div class="truncate text-sm font-semibold tracking-wide">{{ current_firm_name }}</div>
|
<div class="truncate text-sm font-semibold tracking-wide">{{ current_firm_name }}</div>
|
||||||
<div class="truncate text-xs text-slate-400">{% if full_auth %}{{ current_branch_name }}{% if current_branch_name and current_branch_name != "-" %} Branch{% endif %} • Workspace{% elif domain_context.is_resolved %}{{ current_branch_name or 'Domain Workspace' }}{% else %}Secure Practice Workspace{% endif %}</div>
|
<div class="truncate text-xs text-slate-400">{% if full_auth %}{{ current_branch_name }}{% if current_branch_name and current_branch_name != "-" %} Branch{% endif %} • Workspace{% elif domain_context.is_resolved %}{{ current_branch_name or 'Domain Workspace' }}{% else %}Secure Practice Workspace{% endif %}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -153,7 +153,7 @@
|
|||||||
<details class="group rounded-xl" {% if current_path.startswith('/employee') or current_path.startswith('/alerts') %}open{% endif %}>
|
<details class="group rounded-xl" {% if current_path.startswith('/employee') or current_path.startswith('/alerts') %}open{% endif %}>
|
||||||
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
||||||
<span>My Workspace</span>
|
<span>My Workspace</span>
|
||||||
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
||||||
{% if can_view_employee_portal(current_user, ui_perms, ui_roles) %}
|
{% if can_view_employee_portal(current_user, ui_perms, ui_roles) %}
|
||||||
@@ -186,7 +186,7 @@
|
|||||||
<details class="group rounded-xl" {% if current_path.startswith('/partner') %}open{% endif %}>
|
<details class="group rounded-xl" {% if current_path.startswith('/partner') %}open{% endif %}>
|
||||||
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
||||||
<span>Partner Workspace</span>
|
<span>Partner Workspace</span>
|
||||||
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
||||||
<a href="/partner/dashboard" class="block rounded-lg px-3 py-1.5 text-sm transition {% if current_path == '/partner/dashboard' %}bg-brand-600 text-white{% else %}text-slate-300 hover:bg-slate-800 hover:text-white{% endif %}">Overview</a>
|
<a href="/partner/dashboard" class="block rounded-lg px-3 py-1.5 text-sm transition {% if current_path == '/partner/dashboard' %}bg-brand-600 text-white{% else %}text-slate-300 hover:bg-slate-800 hover:text-white{% endif %}">Overview</a>
|
||||||
@@ -201,7 +201,7 @@
|
|||||||
<details class="group rounded-xl" {% if current_path.startswith('/manager') or current_path.startswith('/employees/work') or current_path.startswith('/employees/progress') or current_path.startswith('/employees/attendance') or current_path.startswith('/employees/leave') %}open{% endif %}>
|
<details class="group rounded-xl" {% if current_path.startswith('/manager') or current_path.startswith('/employees/work') or current_path.startswith('/employees/progress') or current_path.startswith('/employees/attendance') or current_path.startswith('/employees/leave') %}open{% endif %}>
|
||||||
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
||||||
<span>Team Workspace</span>
|
<span>Team Workspace</span>
|
||||||
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
||||||
{% if can_manage_employee_work(current_user, ui_perms, ui_roles) %}
|
{% if can_manage_employee_work(current_user, ui_perms, ui_roles) %}
|
||||||
@@ -226,7 +226,7 @@
|
|||||||
<details class="group rounded-xl" {% if current_path.startswith('/billing') %}open{% endif %}>
|
<details class="group rounded-xl" {% if current_path.startswith('/billing') %}open{% endif %}>
|
||||||
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
||||||
<span>Billing</span>
|
<span>Billing</span>
|
||||||
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
||||||
<a href="/billing" class="block rounded-lg px-3 py-1.5 text-sm transition {% if current_path == '/billing' %}bg-brand-600 text-white{% else %}text-slate-300 hover:bg-slate-800 hover:text-white{% endif %}">Invoices</a>
|
<a href="/billing" class="block rounded-lg px-3 py-1.5 text-sm transition {% if current_path == '/billing' %}bg-brand-600 text-white{% else %}text-slate-300 hover:bg-slate-800 hover:text-white{% endif %}">Invoices</a>
|
||||||
@@ -244,7 +244,7 @@
|
|||||||
<details class="group rounded-xl" {% if current_path.startswith('/employees') and not (current_path.startswith('/employees/work') or current_path.startswith('/employees/progress') or current_path.startswith('/employees/attendance') or current_path == '/employees/leave') %}open{% endif %}>
|
<details class="group rounded-xl" {% if current_path.startswith('/employees') and not (current_path.startswith('/employees/work') or current_path.startswith('/employees/progress') or current_path.startswith('/employees/attendance') or current_path == '/employees/leave') %}open{% endif %}>
|
||||||
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
||||||
<span>Team Administration</span>
|
<span>Team Administration</span>
|
||||||
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
||||||
{% if can_view_employee_dashboard(current_user, ui_perms, ui_roles) %}<a href="/employees/dashboard" class="block rounded-lg px-3 py-1.5 text-sm text-slate-300 transition hover:bg-slate-800 hover:text-white">HR Dashboard</a>{% endif %}
|
{% if can_view_employee_dashboard(current_user, ui_perms, ui_roles) %}<a href="/employees/dashboard" class="block rounded-lg px-3 py-1.5 text-sm text-slate-300 transition hover:bg-slate-800 hover:text-white">HR Dashboard</a>{% endif %}
|
||||||
@@ -282,7 +282,7 @@
|
|||||||
<details class="group rounded-xl" {% if current_path.startswith('/system-settings/users') or current_path.startswith('/system-settings/rbac') or current_path.startswith('/services') or current_path.startswith('/clients') or current_path.startswith('/consultants') or current_path.startswith('/email') or current_path.startswith('/notice-cases') %}open{% endif %}>
|
<details class="group rounded-xl" {% if current_path.startswith('/system-settings/users') or current_path.startswith('/system-settings/rbac') or current_path.startswith('/services') or current_path.startswith('/clients') or current_path.startswith('/consultants') or current_path.startswith('/email') or current_path.startswith('/notice-cases') %}open{% endif %}>
|
||||||
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
||||||
<span>Firm Administration</span>
|
<span>Firm Administration</span>
|
||||||
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
||||||
{% if "Firm Admin" in ui_roles or is_system_admin_user %}
|
{% if "Firm Admin" in ui_roles or is_system_admin_user %}
|
||||||
@@ -338,7 +338,7 @@
|
|||||||
<details class="group rounded-xl" {% if current_path.startswith('/domains') or current_path.startswith('/platform-billing') or current_path.startswith('/marketplace') %}open{% endif %}>
|
<details class="group rounded-xl" {% if current_path.startswith('/domains') or current_path.startswith('/platform-billing') or current_path.startswith('/marketplace') %}open{% endif %}>
|
||||||
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
||||||
<span>Platform</span>
|
<span>Platform</span>
|
||||||
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
||||||
<div class="pt-3 text-[10px] font-semibold uppercase tracking-[0.16em] text-slate-500">Domain Configuration</div>
|
<div class="pt-3 text-[10px] font-semibold uppercase tracking-[0.16em] text-slate-500">Domain Configuration</div>
|
||||||
@@ -360,7 +360,7 @@
|
|||||||
<details class="group rounded-xl" {% if current_path.startswith('/system-settings') %}open{% endif %}>
|
<details class="group rounded-xl" {% if current_path.startswith('/system-settings') %}open{% endif %}>
|
||||||
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
<summary class="flex cursor-pointer list-none items-center justify-between rounded-xl px-3 py-2 text-sm font-semibold transition hover:bg-slate-800">
|
||||||
<span>Core Setup</span>
|
<span>Core Setup</span>
|
||||||
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
<span class="text-xs text-slate-400 transition group-open:rotate-90">›</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
<div class="mt-1 space-y-1 border-l border-slate-700/70 pl-3">
|
||||||
{% if can_view_settings(current_user, ui_perms, ui_roles) %}
|
{% if can_view_settings(current_user, ui_perms, ui_roles) %}
|
||||||
@@ -400,11 +400,11 @@
|
|||||||
<div class="font-medium text-slate-800">{{ current_user.full_name or current_user.email }}</div>
|
<div class="font-medium text-slate-800">{{ current_user.full_name or current_user.email }}</div>
|
||||||
<div class="text-slate-500">{{ current_user.email }}</div>
|
<div class="text-slate-500">{{ current_user.email }}</div>
|
||||||
{% if current_user.qualification or current_user.designation %}
|
{% if current_user.qualification or current_user.designation %}
|
||||||
<div class="text-xs text-slate-500">{{ current_user.qualification or '' }}{% if current_user.qualification and current_user.designation %} • {% endif %}{{ current_user.designation or '' }}</div>
|
<div class="text-xs text-slate-500">{{ current_user.qualification or '' }}{% if current_user.qualification and current_user.designation %} • {% endif %}{{ current_user.designation or '' }}</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<div class="text-xs text-slate-400">
|
<div class="text-xs text-slate-400">
|
||||||
Your Firm: {{ current_firm_name }}
|
Your Firm: {{ current_firm_name }}
|
||||||
• Branch: {{ current_branch_name }}{% if active_financial_year %} • FY: {{ active_financial_year }}{% endif %}
|
• Branch: {{ current_branch_name }}{% if active_financial_year %} • FY: {{ active_financial_year }}{% endif %}
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-2 flex justify-end gap-2">
|
<div class="mt-2 flex justify-end gap-2">
|
||||||
{% if "Consultant" in ui_roles %}
|
{% if "Consultant" in ui_roles %}
|
||||||
@@ -426,7 +426,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if domain_context.is_resolved %}
|
{% if domain_context.is_resolved %}
|
||||||
<div class="mb-2 text-xs text-slate-500">{{ current_firm_name }}{% if current_branch_name %} • {{ current_branch_name }}{% endif %}</div>
|
<div class="mb-2 text-xs text-slate-500">{{ current_firm_name }}{% if current_branch_name %} • {{ current_branch_name }}{% endif %}</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<a class="inline-flex rounded-lg bg-brand-600 px-3 py-2 text-sm font-medium text-white hover:bg-brand-700" href="/login">Login</a>
|
<a class="inline-flex rounded-lg bg-brand-600 px-3 py-2 text-sm font-medium text-white hover:bg-brand-700" href="/login">Login</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -472,10 +472,20 @@
|
|||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
|
||||||
|
{% if is_system_admin_user %}
|
||||||
|
<div>
|
||||||
|
<label class="mb-1 block text-xs font-semibold uppercase tracking-wide text-slate-500">System Wizard</label>
|
||||||
|
<a href="/wizards/system/firm/new"
|
||||||
|
class="inline-flex items-center rounded-xl bg-brand-600 px-4 py-2 text-sm font-semibold text-white shadow-soft transition hover:bg-brand-700">
|
||||||
|
+ Create Firm
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
<div class="text-xs text-slate-500">
|
<div class="text-xs text-slate-500">
|
||||||
Active Scope:
|
Active Scope:
|
||||||
{{ current_firm_name }}
|
{{ current_firm_name }}
|
||||||
• {{ current_branch_name if active_branch_id else "All Branches" }}{% if active_financial_year %} • FY {{ active_financial_year }}{% endif %}
|
• {{ current_branch_name if active_branch_id else "All Branches" }}{% if active_financial_year %} • FY {{ active_financial_year }}{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -547,7 +557,7 @@
|
|||||||
wrapper.className = "overflow-hidden rounded-2xl border shadow-soft " + priorityClasses(alert.priority);
|
wrapper.className = "overflow-hidden rounded-2xl border shadow-soft " + priorityClasses(alert.priority);
|
||||||
wrapper.innerHTML = `
|
wrapper.innerHTML = `
|
||||||
<div class="flex items-start gap-3 p-4">
|
<div class="flex items-start gap-3 p-4">
|
||||||
<div class="mt-0.5 flex h-9 w-9 shrink-0 items-center justify-center rounded-xl bg-white/80 text-base">🔔</div>
|
<div class="mt-0.5 flex h-9 w-9 shrink-0 items-center justify-center rounded-xl bg-white/80 text-base">🔔</div>
|
||||||
<div class="min-w-0 flex-1">
|
<div class="min-w-0 flex-1">
|
||||||
<div class="text-xs font-semibold uppercase tracking-wide opacity-75">New Alert</div>
|
<div class="text-xs font-semibold uppercase tracking-wide opacity-75">New Alert</div>
|
||||||
<div class="mt-0.5 line-clamp-2 text-sm font-semibold"></div>
|
<div class="mt-0.5 line-clamp-2 text-sm font-semibold"></div>
|
||||||
@@ -615,3 +625,4 @@
|
|||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user