"use server";

import { revalidatePath } from "next/cache";
import { redirect } from "next/navigation";
import { prisma } from "@/lib/prisma";
import { requirePermission } from "@/lib/permissions";

export async function updateStaticPage(path: string, formData: FormData) {
  await requirePermission("pages", "edit");
  const title = String(formData.get("title") ?? "").trim();
  const body = String(formData.get("body") ?? "").trim();
  if (!title || !body) redirect(`/iv-manage-84x2/website?edit=${encodeURIComponent(path)}&error=Title+and+body+are+required`);

  await prisma.staticPage.update({ where: { path }, data: { title, body } });
  revalidatePath(path);
  revalidatePath("/iv-manage-84x2/website");
  redirect("/iv-manage-84x2/website?success=Page+updated.");
}
