'use client'; import React, { useState, useEffect } from 'react'; import { onAuthStateChanged, User } from 'firebase/auth'; import { firebaseAuth } from '../../lib/firebase-client'; import { GroupRidesShowcase } from '../../components/group-rides/group-rides-showcase'; import { GroupRidesManagement } from '../../components/group-rides/group-rides-management'; export default function GroupRidesPage() { const [currentUser, setCurrentUser] = useState(firebaseAuth?.currentUser ?? null); const [viewOverride, setViewOverride] = useState<'showcase' | 'manage' | null>(null); useEffect(() => { // Check URL parameters for explicit view overrides (?view=showcase or ?view=manage) if (typeof window !== 'undefined') { const params = new URLSearchParams(window.location.search); const view = params.get('view'); if (view === 'showcase' || view === 'manage') { setViewOverride(view); } } const unsubscribe = onAuthStateChanged(firebaseAuth, (user) => { setCurrentUser(user); }); return () => unsubscribe(); }, []); // If explicit showcase view requested if (viewOverride === 'showcase') { return ( setViewOverride('manage')} /> ); } // If user is authenticated: render Group Rides Management Console if (currentUser) { return ( setViewOverride('showcase')} /> ); } // If user is not authenticated: render Group Rides Feature Showcase Page return ( setViewOverride('manage')} /> ); }