From 203fbc21754b9c9400a54baaa79c6f98fb0859e5 Mon Sep 17 00:00:00 2001 From: Edwin Eames Date: Fri, 27 Feb 2026 18:45:12 -0500 Subject: [PATCH] feat: add admin settings UI and integrate dynamic configuration Add settings page with 4 tabs (Logo, Company, Visibility, Theme) for managing company branding, social links, sidebar section visibility, and color themes. Integrate settings store globally so sidebar, footer, header, and theme respond to admin configuration. Add active/dedicated customer stat cards to dashboard. Wire up quick-call contacts and Google review links from settings. Co-Authored-By: Claude Opus 4.6 --- src/layouts/DefaultLayout.vue | 3 + src/layouts/footers/footer.vue | 34 ++++-- src/layouts/headers/headerauth.vue | 6 +- src/layouts/sidebar/sidebar.vue | 15 ++- src/pages/Index.vue | 12 +- src/pages/admin/routes.ts | 6 + src/pages/admin/settings/SettingsCompany.vue | 112 ++++++++++++++++++ src/pages/admin/settings/SettingsLogo.vue | 77 ++++++++++++ src/pages/admin/settings/SettingsPage.vue | 33 ++++++ src/pages/admin/settings/SettingsTheme.vue | 53 +++++++++ .../admin/settings/SettingsVisibility.vue | 78 ++++++++++++ src/pages/customer/create.vue | 15 +-- src/pages/customer/home.vue | 42 ++++++- src/pages/customer/profile/profile.vue | 22 ++-- src/pages/delivery/map.vue | 108 +++++------------ .../update_tickets/finalize_ticket.vue | 5 +- .../finalize_ticket_auto_nocc.vue | 2 +- src/pages/pay/oil/authorize_preauthcharge.vue | 49 ++++---- src/pages/pay/oil/pay_oil.vue | 32 +++-- src/pages/ticket/ticket.vue | 94 +++++++++++++-- src/services/adminService.ts | 20 ++++ src/services/customerService.ts | 6 + src/stores/settings.ts | 94 +++++++++++++++ src/stores/theme.ts | 19 +-- src/types/models.ts | 29 +++++ tailwind.config.js | 110 +++++++++++++---- 26 files changed, 871 insertions(+), 205 deletions(-) create mode 100644 src/pages/admin/settings/SettingsCompany.vue create mode 100644 src/pages/admin/settings/SettingsLogo.vue create mode 100644 src/pages/admin/settings/SettingsPage.vue create mode 100644 src/pages/admin/settings/SettingsTheme.vue create mode 100644 src/pages/admin/settings/SettingsVisibility.vue create mode 100644 src/stores/settings.ts diff --git a/src/layouts/DefaultLayout.vue b/src/layouts/DefaultLayout.vue index be51e1d..4671c6d 100644 --- a/src/layouts/DefaultLayout.vue +++ b/src/layouts/DefaultLayout.vue @@ -34,6 +34,7 @@ diff --git a/src/layouts/footers/footer.vue b/src/layouts/footers/footer.vue index c1ab3fb..e65a63d 100755 --- a/src/layouts/footers/footer.vue +++ b/src/layouts/footers/footer.vue @@ -2,17 +2,13 @@