import Link from "next/link";
import { redirect } from "next/navigation";
import { getSession } from "../../../lib/admin-auth";
export const metadata = {
  title: "Iniciar sessão — Administração",
  robots: { index: false, follow: false },
};
export default async function AdminLogin({
  searchParams,
}: {
  searchParams: Promise<{ error?: string; return_to?: string }>;
}) {
  const user = await getSession();
  if (user) redirect("/administracao");
  const params = await searchParams,
    returnTo = params.return_to?.startsWith("/")
      ? params.return_to
      : "/administracao";
  return (
    <main id="conteudo" className="admin-gate">
      <div>
        <p className="eyebrow">Área reservada</p>
        <h1>Iniciar sessão</h1>
        <p>Introduza os dados de acesso à gestão de inscrições.</p>
        {params.error && (
          <p className="admin-login-error">
            Utilizador ou palavra-passe incorretos.
          </p>
        )}
        <form
          className="admin-login-form"
          action="/api/admin/login"
          method="post"
        >
          <input type="hidden" name="return_to" value={returnTo} />
          <label>
            Utilizador
            <input name="username" autoComplete="username" required autoFocus />
          </label>
          <label>
            Palavra-passe
            <input
              name="password"
              type="password"
              autoComplete="current-password"
              required
            />
          </label>
          <button className="button">Entrar</button>
        </form>
        <Link href="/">Voltar ao site</Link>
      </div>
    </main>
  );
}
