"use client"

import { useEffect } from "react"
import { useRouter } from "next/navigation"
import { useLocale } from "next-intl"
import { hasValidAccessToken } from "@/src/lib/api/session"
import { FullPageLoader } from "@/src/components/app/FullPageLoader"

export default function LocaleRootPage() {
  const router = useRouter()
  const locale = useLocale()

  useEffect(() => {
    const isAdminDomain =
      typeof window !== "undefined" &&
      window.location.hostname.startsWith("gestion.")

    if (isAdminDomain) {
      // Sur gestion.* : si connecté en superuser → admin, sinon → admin/login
      if (hasValidAccessToken()) {
        try {
          const me = JSON.parse(localStorage.getItem("acx_me") ?? "null")
          if (me?.is_superuser) {
            router.replace(`/${locale}/admin`)
            return
          }
        } catch {}
      }
      router.replace(`/${locale}/admin/login`)
    } else {
      // Sur app.* : si connecté → dashboard, sinon → login
      if (hasValidAccessToken()) {
        router.replace(`/${locale}/dashboard`)
      } else {
        router.replace(`/${locale}/login`)
      }
    }
  }, [router, locale])

  return <FullPageLoader />
}
