import { getSession } from '@/lib/session'
import { isAdmin } from '@/lib/admin'
import { createGoldOption } from '@/lib/admin-gold'

export async function POST(request: Request) {
  const session = await getSession()
  if (!(await isAdmin(session))) return Response.json({ success: false, error: 'forbidden' }, { status: 403 })
  let b: Record<string, unknown> = {}
  try { b = await request.json() } catch { return Response.json({ success: false, error: 'invalidRequest' }, { status: 400 }) }
  const goldAmount = Number(b.goldAmount)
  const price = Number(b.price)
  if (!(goldAmount > 0) || !(price >= 0)) return Response.json({ success: false, error: 'emptyError' })
  const id = await createGoldOption(goldAmount, price)
  return Response.json({ success: true, id })
}
