'use client'; import { useState } from 'react'; import { useSession, signOut } from 'next-auth/react'; import Link from 'next/link'; import { useRouter } from 'next/navigation'; import { User, Upload, Users, LogIn, UserPlus } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { Popover, PopoverContent, PopoverTrigger, } from '@/components/ui/popover'; import { Tooltip, TooltipContent, TooltipTrigger, } from '@/components/ui/tooltip'; import { LoginDialog } from '@/components/LoginDialog'; import { RegisterDialog } from '@/components/RegisterDialog'; import { ManageUsersPageClient } from '@/app/admin/users/ManageUsersPageClient'; function UserMenu() { const { data: session, status } = useSession(); const router = useRouter(); const [loginDialogOpen, setLoginDialogOpen] = useState(false); const [registerDialogOpen, setRegisterDialogOpen] = useState(false); const [manageUsersOpen, setManageUsersOpen] = useState(false); const [popoverOpen, setPopoverOpen] = useState(false); const handleSignOut = async () => { await signOut({ callbackUrl: '/' }); }; if (status === 'loading') { return
; } if (session?.user) { return ( <>

Upload your own photos

{session.user.name || 'User'}

{session.user.email}

{session.user.isAdmin && ( )}
{manageUsersOpen && ( setManageUsersOpen(false)} /> )} ); } return ( <> { setLoginDialogOpen(open); }} onOpenRegister={() => { setLoginDialogOpen(false); setRegisterDialogOpen(true); }} /> { setRegisterDialogOpen(open); }} onOpenLogin={() => { setRegisterDialogOpen(false); setLoginDialogOpen(true); }} /> ); } export default UserMenu;