From 21338f15417da40a152881358d317ee5c38bd7ef Mon Sep 17 00:00:00 2001 From: kayela Date: Sun, 1 Feb 2026 16:44:55 -0600 Subject: [PATCH] feat: restruction of admin sidebar, button slightly adjusted, member tiers header added, routing for sidbar adjusted --- src/App.js | 25 ++++++++++++++----- src/components/AdminSidebar.js | 37 +++++++++++++++++++++++++---- src/components/SettingsSidebar.js | 3 +-- src/pages/admin/AdminDashboard.js | 2 +- src/pages/admin/AdminMemberTiers.js | 12 +++++++--- 5 files changed, 62 insertions(+), 17 deletions(-) diff --git a/src/App.js b/src/App.js index e8ffa65..98278c8 100644 --- a/src/App.js +++ b/src/App.js @@ -62,19 +62,19 @@ import NotFound from './pages/NotFound'; const PrivateRoute = ({ children, adminOnly = false }) => { const { user, loading } = useAuth(); - + if (loading) { return
Loading...
; } - + if (!user) { return ; } - + if (adminOnly && !['admin', 'superadmin'].includes(user.role)) { return ; } - + return children; }; @@ -239,6 +239,20 @@ function App() { } /> + + + + + + } /> + + + + + + } /> @@ -293,6 +307,7 @@ function App() { } /> + @@ -303,9 +318,7 @@ function App() { } /> } /> } /> - } /> } /> - } /> {/* 404 - Catch all undefined routes */} diff --git a/src/components/AdminSidebar.js b/src/components/AdminSidebar.js index d976a20..a8c96f2 100644 --- a/src/components/AdminSidebar.js +++ b/src/components/AdminSidebar.js @@ -27,6 +27,8 @@ import { Heart, Sun, Moon, + Star, + FileEdit } from 'lucide-react'; const AdminSidebar = ({ isOpen, onToggle, isMobile }) => { @@ -104,18 +106,31 @@ const AdminSidebar = ({ isOpen, onToggle, isMobile }) => { path: '/admin', disabled: false }, + { - name: 'Staff', + name: 'Staff & Admins', icon: UserCog, path: '/admin/staff', disabled: false }, { - name: 'Members', + name: 'Member Roster', icon: Users, path: '/admin/members', disabled: false }, + { + name: 'Member Tiers', + icon: Star, + path: '/admin/member-tiers', + disabled: false + }, + { + name: 'Registration', + icon: FileEdit, + path: '/admin/registration', + disabled: false + }, { name: 'Validations', icon: CheckCircle, @@ -316,6 +331,18 @@ const AdminSidebar = ({ isOpen, onToggle, isMobile }) => { {/* Dashboard - Standalone */} {renderNavItem(filteredNavItems.find(item => item.name === 'Dashboard'))} + {/* Onboarding Section */} + {isOpen && ( +
+

+ Onboarding +

+
+ )} +
+ {renderNavItem(filteredNavItems.find(item => item.name === 'Registration'))} + {renderNavItem(filteredNavItems.find(item => item.name === 'Validations'))} +
{/* MEMBERSHIP Section */} {isOpen && (
@@ -325,9 +352,9 @@ const AdminSidebar = ({ isOpen, onToggle, isMobile }) => {
)}
- {renderNavItem(filteredNavItems.find(item => item.name === 'Staff'))} - {renderNavItem(filteredNavItems.find(item => item.name === 'Members'))} - {renderNavItem(filteredNavItems.find(item => item.name === 'Validations'))} + {renderNavItem(filteredNavItems.find(item => item.name === 'Member Roster'))} + {renderNavItem(filteredNavItems.find(item => item.name === 'Member Tiers'))} + {renderNavItem(filteredNavItems.find(item => item.name === 'Staff & Admins'))}
{/* FINANCIALS Section */} diff --git a/src/components/SettingsSidebar.js b/src/components/SettingsSidebar.js index 39d1fff..2c25883 100644 --- a/src/components/SettingsSidebar.js +++ b/src/components/SettingsSidebar.js @@ -5,9 +5,8 @@ import { CreditCard, Shield, Star, Palette, FileEdit } from 'lucide-react'; const settingsItems = [ { label: 'Stripe', path: '/admin/settings/stripe', icon: CreditCard }, { label: 'Permissions', path: '/admin/settings/permissions', icon: Shield }, - { label: 'Member Tiers', path: '/admin/settings/member-tiers', icon: Star }, { label: 'Theme', path: '/admin/settings/theme', icon: Palette }, - { label: 'Registration Form', path: '/admin/settings/registration', icon: FileEdit }, + ]; const SettingsTabs = () => { diff --git a/src/pages/admin/AdminDashboard.js b/src/pages/admin/AdminDashboard.js index 8c0a4c2..8f1cf21 100644 --- a/src/pages/admin/AdminDashboard.js +++ b/src/pages/admin/AdminDashboard.js @@ -71,7 +71,7 @@ const AdminDashboard = () => {