import React from 'react'; import { usePage } from '@inertiajs/react'; import { Link, router } from '@inertiajs/react'; import { useTranslation } from 'react-i18next'; import i18n from '@/i18n'; import { useAppearance } from '@/hooks/use-appearance'; import { useLocalizedRoutes } from '@/hooks/useLocalizedRoutes'; import { Button } from '@/components/ui/button'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select'; import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger } from '@/components/ui/dropdown-menu'; import { Sun, Moon } from 'lucide-react'; import { cn } from '@/lib/utils'; const Header: React.FC = () => { const { auth, locale } = usePage().props as any; const { t } = useTranslation('auth'); const { appearance, updateAppearance } = useAppearance(); const { localizedPath } = useLocalizedRoutes(); const toggleTheme = () => { const newAppearance = appearance === 'dark' ? 'light' : 'dark'; updateAppearance(newAppearance); }; const handleLanguageChange = (value: string) => { router.post('/set-locale', { locale: value }, { preserveState: true, replace: true, onSuccess: () => { i18n.changeLanguage(value); }, }); }; const handleLogout = () => { router.post('/logout'); }; return (
Fotospiel
{auth.user ? (

{auth.user?.name || auth.user?.email || 'User'}

{auth.user?.email || ''}

Profil Bestellungen Abmelden
) : ( <> {t('header.login')} {t('header.register')} )}
); }; export default Header;