import { auth } from "@/lib/auth";
import { getConfig, setConfig } from "@/lib/config";

export async function GET(req: Request) {
  const session = await auth();
  if (!session) return Response.json({ error: "Unauthorized" }, { status: 401 });

  const url = new URL(req.url);
  const clave = url.searchParams.get("clave");
  if (!clave) return Response.json({ error: "clave required" }, { status: 400 });

  const valor = await getConfig(clave);
  return Response.json({ clave, valor });
}

export async function PUT(req: Request) {
  const session = await auth();
  if (!session) return Response.json({ error: "Unauthorized" }, { status: 401 });
  if (session.user.role !== "admin") return Response.json({ error: "Forbidden" }, { status: 403 });

  const body = await req.json();
  const { clave, valor } = body;

  if (!clave || valor === undefined) {
    return Response.json({ error: "clave and valor required" }, { status: 400 });
  }

  await setConfig(clave, String(valor));
  return Response.json({ success: true });
}
