"use server";

import { cookies } from "next/headers";
import { getPassword, setPassword } from "@/lib/db";
import { revalidatePath } from "next/cache";

export async function loginAction(password: string) {
  const currentPassword = getPassword();
  if (password === currentPassword) {
    const cookieStore = await cookies();
    cookieStore.set("admin_auth", password, { httpOnly: true, secure: true });
    revalidatePath("/admin");
    return { success: true };
  }
  return { success: false, error: "Code incorrect" };
}

export async function changePasswordAction(newPassword: string) {
  setPassword(newPassword);
  const cookieStore = await cookies();
  cookieStore.set("admin_auth", newPassword, { httpOnly: true, secure: true });
  revalidatePath("/admin");
  return { success: true };
}

export async function logoutAction() {
  const cookieStore = await cookies();
  cookieStore.delete("admin_auth");
  revalidatePath("/admin");
  return { success: true };
}
