import { getSession } from '@/lib/session' import { isAdmin } from '@/lib/admin' import { deleteForum, updateForum } from '@/lib/admin-forum' export async function DELETE(_request: Request, { params }: { params: Promise<{ id: string }> }) { const session = await getSession() if (!(await isAdmin(session))) return Response.json({ success: false, error: 'forbidden' }, { status: 403 }) const { id } = await params const ok = await deleteForum(Number(id)) return Response.json({ success: ok, error: ok ? undefined : 'forumNotEmpty' }) } export async function PUT(request: Request, { params }: { params: Promise<{ id: string }> }) { const session = await getSession() if (!(await isAdmin(session))) return Response.json({ success: false, error: 'forbidden' }, { status: 403 }) const { id } = await params let b: Record = {} try { b = await request.json() } catch { return Response.json({ success: false, error: 'invalidRequest' }, { status: 400 }) } const f = { category: Number(b.category), name: String(b.name ?? '').trim(), description: String(b.description ?? '').trim(), icon: String(b.icon ?? '').trim() || null, colortitle: String(b.colortitle ?? '').trim() || null, type: Number(b.type) || 0, order: Number(b.order) || 0, } if (!f.category || !f.name) return Response.json({ success: false, error: 'emptyError' }) await updateForum(Number(id), f) return Response.json({ success: true }) }