'use client' import { signIn, signOut } from 'next-auth/react' import { useSteamProfile } from '@/app/hooks/useSteamProfile' import { useRouter } from 'next/navigation' import { useEffect, useState } from 'react' import { AnimatePresence, motion } from 'framer-motion' import { usePathname } from 'next/navigation' import Script from "next/script"; import LoadingSpinner from '@/app/components/LoadingSpinner' import Image from 'next/image' import Button from './Button' export default function SidebarFooter() { const router = useRouter() const { session, steamProfile, status } = useSteamProfile() const [isOpen, setIsOpen] = useState(false) const pathname = usePathname() const [teamName, setTeamName] = useState(null) useEffect(() => { const loadTeamName = async () => { const teamId = session?.user?.team if (!teamId) { setTeamName(null) return } try { const res = await fetch(`/api/team/${teamId}`) const data = await res.json() setTeamName(data?.teamname ?? null) } catch (err) { console.error('[SidebarFooter] Team‑Name konnte nicht geladen werden:', err) setTeamName(null) } } loadTeamName() }, [session?.user?.team]) if (status === 'loading') return if (status === 'unauthenticated') { return ( <> ) } const user = session!.user const subline = teamName // 1. Teamname, wenn vorhanden ?? steamProfile?.steamId // 2. Steam‑ID (wenn bereits vom Hook gemappt) ?? user.id // 3. Fallback auf JWT‑id return ( <>
{/* Button */} {/* Menü */} {isOpen && (
{user?.isAdmin && ( )}
)}
) }