'use client';

import { useEffect } from "react";
import { useRouter } from "next/navigation";
import { useAuth } from "../../context/AuthContext";

export default function AdminLayout({ children }: { children: React.ReactNode; }) {
    const router = useRouter();

    const { loading, isAuthenticated, user } = useAuth();

    useEffect(() => {
        if (loading) return;

        if (!isAuthenticated) {
            router.replace("/login");
        }
        if (user && user?.role !== "ADMIN") {
            router.replace("/forbidden");
        }
    }, [loading, isAuthenticated, user, router]);

    if (loading || user?.role !== "ADMIN") {
        return null;
    }

    return children;
}