feat: add navigation for admin portal
continuous-integration/drone/push Build is passing Details

Add 'Venue Admin' menu item in hamburger navigation:
- Links to /admin/clubs for facility management
- Purple accent to distinguish from player features
- Positioned after assessment, before language selector

Add tabs to club detail page:
- Plans tab (purple accent)
- Members tab (purple accent)
- Settings tab (purple accent)
- All tabs link to new admin portal pages

Navigation is now complete for accessing all facility management features.
master
Guillermo Pages 3 weeks ago
parent 5dd283525b
commit 95759fd649

@ -196,6 +196,24 @@ export default function ClubDetailTabs({ clubId }: ClubDetailTabsProps) {
>
Slot Definitions
</Link>
<Link
href={`/${locale}/admin/clubs/${clubId}/plans`}
className="px-6 py-3 font-semibold text-purple-600 hover:text-purple-700 hover:border-purple-300 transition-colors border-b-2 border-transparent"
>
Plans
</Link>
<Link
href={`/${locale}/admin/clubs/${clubId}/members`}
className="px-6 py-3 font-semibold text-purple-600 hover:text-purple-700 hover:border-purple-300 transition-colors border-b-2 border-transparent"
>
Members
</Link>
<Link
href={`/${locale}/admin/clubs/${clubId}/settings`}
className="px-6 py-3 font-semibold text-purple-600 hover:text-purple-700 hover:border-purple-300 transition-colors border-b-2 border-transparent"
>
Settings
</Link>
</div>
</div>

@ -408,7 +408,28 @@ export default function Navigation({ pageTitle }: NavigationProps) {
</div>
<span className="font-medium text-slate-900">{t("What's my level?")}</span>
</Link>
</motion.div>
</motion.div>
{/* Admin Section */}
<div className="my-4 border-t border-slate-100"></div>
<motion.div
custom={4}
variants={menuItemVariants}
initial="closed"
animate="open"
>
<Link
href={localizedLink("/admin/clubs")}
onClick={closeMenu}
className="flex items-center space-x-3 p-4 rounded-xl hover:bg-slate-50 transition-colors duration-200 group"
>
<div className="p-2 rounded-lg bg-purple-100 group-hover:bg-purple-200 transition-colors duration-200">
<Settings className="w-5 h-5 text-purple-700" />
</div>
<span className="font-medium text-slate-900">{t('Venue Admin')}</span>
</Link>
</motion.div>
</>
)}
@ -416,7 +437,7 @@ export default function Navigation({ pageTitle }: NavigationProps) {
<div className="my-4 border-t border-slate-100"></div>
<motion.div
custom={isLoggedIn ? 4 : 2}
custom={isLoggedIn ? 5 : 2}
variants={menuItemVariants}
initial="closed"
animate="open"
@ -476,7 +497,7 @@ export default function Navigation({ pageTitle }: NavigationProps) {
{isLoggedIn && (
<div className="flex items-center gap-3">
<motion.div
custom={5}
custom={6}
variants={menuItemVariants}
initial="closed"
animate="open"
@ -494,7 +515,7 @@ export default function Navigation({ pageTitle }: NavigationProps) {
</Link>
</motion.div>
<motion.div
custom={6}
custom={7}
variants={menuItemVariants}
initial="closed"
animate="open"

Loading…
Cancel
Save