diff --git a/src/actions/register.ts b/src/actions/register.ts index 78edb645a2..5e4f9c5173 100644 --- a/src/actions/register.ts +++ b/src/actions/register.ts @@ -52,6 +52,7 @@ export async function register( String(formData.get("look") ?? "") .normalize("NFC") .trim() || DEFAULT_LOOK, + termsAccepted: formData.get("terms") === "on", }; const parsed = registerSchema.safeParse(raw); @@ -76,6 +77,10 @@ export async function register( return "Captcha verification failed. Please try again."; } + // Terms acceptance check. + if (!raw.termsAccepted) + return "You must accept the terms and conditions to register."; + // VPN/proxy block (only when enabled in /admin/vpn). if ((await checkVpn(ip)).blocked) { return (