{# pages/dashboard.html — premium dashboard #} {% extends "base.html" %} {% block title %}{{ title | default("Admin") }} — Dashboard{% endblock %} {% block content %} {% set _icons = { 'Categories': 'folder', 'Products': 'shopping-bag', 'Users': 'users', 'Orders': 'shopping-cart', 'Order Items': 'list-bullet', 'Order Itemss': 'list-bullet', 'Admin Field Permissions': 'shield-check', 'Admin Field Permissionss': 'shield-check', 'Admin Permissions': 'key', 'Admin Permissionss': 'key', 'Admin Users': 'user-group', 'Admin Userss': 'user-group', 'Admin Audit Logs': 'document-text', 'Admin Roles': 'cog-6-tooth', 'Admin Roless': 'cog-6-tooth' } %} {% set _colors = { 'Categories': 'teal', 'Products': 'purple', 'Users': 'blue', 'Orders': 'orange', 'Order Items': 'green', 'Order Itemss': 'green', 'Admin Field Permissions': 'yellow', 'Admin Field Permissionss': 'yellow', 'Admin Permissions': 'red', 'Admin Permissionss': 'red', 'Admin Users': 'indigo', 'Admin Userss': 'indigo', 'Admin Audit Logs': 'cyan', 'Admin Roles': 'pink', 'Admin Roless': 'pink' } %}
{# ─── Page Header ─── #} {# ─── Stat Cards ─── #}
{% for card in stat_cards %} {% set _color = _colors[card.title] | default('teal') %} {% set _icon = _icons[card.title] | default('cube') %}
{{ icon(_icon, size="20px") }}
{{ card.title }}
{{ card.count }}
Total {{ card.title | lower }} {% if card.has_trend %} {% if card.trend_direction == 'up' %}{{ icon('arrow-up', size="10px") }}{% else %}{{ icon('arrow-down', size="10px") }}{% endif %} {{ card.trend_pct }}% vs last 30 days {% endif %}
{# Wave decoration #}
{% endfor %}
{# ─── Bottom Grid: Activity + Quick Actions ─── #}
{# Recent Activity #}
{{ icon('clock', size="18px") }}

Recent Activity

Latest system activities will appear here

{% if recent_audit %} View all {{ icon('chevron-right', size="14px") }} {% endif %}
{% if recent_audit %}
{% for entry in recent_audit %}
{% if entry.action == 'CREATE' %}
{{ icon('plus', size="16px") }}
{% elif entry.action == 'UPDATE' %}
{{ icon('pencil', size="16px") }}
{% elif entry.action == 'DELETE' %}
{{ icon('trash', size="16px") }}
{% endif %}
{{ entry.user_email | default("System") }} {{ entry.action | lower }}d {{ entry.model_name }} #{{ entry.object_id }}
{{ entry.timestamp }}
{% endfor %}
{% else %}
{{ icon('clock', size="32px") }}

No recent Activity

System activities will appear here

{% endif %}
{# Quick Actions #}
{{ icon('bolt', size="18px") }}

Quick Actions

Common actions at your fingertips

{% set _action_colors = { 'Categories': {'bg': 'rgba(20, 184, 166, 0.12)', 'fg': '#14b8a6'}, 'Products': {'bg': 'rgba(139, 92, 246, 0.12)', 'fg': '#8b5cf6'}, 'Users': {'bg': 'rgba(59, 130, 246, 0.12)', 'fg': '#3b82f6'}, 'Orders': {'bg': 'rgba(249, 115, 22, 0.12)', 'fg': '#f97316'}, 'Order Items': {'bg': 'rgba(34, 197, 94, 0.12)', 'fg': '#22c55e'}, 'Admin Audit Logs': {'bg': 'rgba(6, 182, 212, 0.12)', 'fg': '#06b6d4'}, 'Admin Roles': {'bg': 'rgba(236, 72, 153, 0.12)', 'fg': '#ec4899'}, 'Admin Users': {'bg': 'rgba(99, 102, 241, 0.12)', 'fg': '#6366f1'}, 'Admin Permissions': {'bg': 'rgba(239, 68, 68, 0.12)', 'fg': '#ef4444'}, 'Admin Field Permissions': {'bg': 'rgba(234, 179, 8, 0.12)', 'fg': '#eab308'} } %} {% for registered in registered_models %} {% set _ac = _action_colors[registered.verbose_name_plural] | default({'bg': 'var(--primary-50)', 'fg': 'var(--primary-600)'}) %}
{{ icon(registered.admin.icon | default('cube'), size="18px") }}
Add {{ registered.verbose_name }}
Create a new {{ registered.verbose_name | lower }}
{{ icon('chevron-right', size="18px", class="action-chevron") }}
{% endfor %} {# Extra: System Logs link #}
{{ icon('document-text', size="18px") }}
System Logs
View system audit logs
{{ icon('chevron-right', size="18px", class="action-chevron") }}
{# ─── System Overview (donut chart) ─── #} {% if overview_data %}
{{ icon('chart-bar') }}
System Overview
{% for item in overview_data %} {% if item.value > 0 %}
{{ item.label }} {{ item.value }}
{% endif %} {% endfor %}
Total {{ overview_total }}
{% endif %}
{% endblock %}