import type { Metadata } from "next"; import { cookies } from "next/headers"; import { authCookieHeader } from "@/lib/cookies"; import { fetchAdminBoards, type AdminBoard } from "@/lib/api"; import { getMeCached } from "@/lib/serverData"; import { isOwner } from "@/lib/roles"; import Forbidden from "../Forbidden"; import BoardsAdmin from "./BoardsAdmin"; export const metadata: Metadata = { title: "板块管理", }; export default async function AdminBoardsPage() { const cookie = authCookieHeader(await cookies()); const me = await getMeCached(cookie || undefined); // 仅站长可管理板块 if (!me.user || !isOwner(me.user.role)) { return ; } let initial: AdminBoard[] | null = null; let initError = ""; try { const r = await fetchAdminBoards(cookie || undefined); initial = r.boards ?? []; } catch (e) { initError = e instanceof Error ? e.message : "获取板块列表失败"; } return ; }