import { getServerSession } from "next-auth"; import { authOptions } from "@/app/api/auth/[...nextauth]/route"; import { redirect } from "next/navigation"; import { SidebarProvider, SidebarTrigger } from "@/components/ui/sidebar"; import { AdminSidebar } from "./client"; import { Metadata } from "next"; export const metadata: Metadata = { title: { default: "Admin", template: "%s | Erika!", }, } export default async function AdminFormLayout( props: { children: React.ReactNode; params: Promise<{ id: string }>; } ) { const params = await props.params; const session = await getServerSession(authOptions); const adminIds = (process.env.ADMIN_DISCORD_IDS ?? "") .split(",") .map((s) => s.trim()) .filter(Boolean); const discordId = (session?.user as any)?.discordId; if (!discordId || !adminIds.includes(discordId)) { redirect("/form"); } return (
{props.children}
); }