Allow signing up forever without Brevo.

Also allow logins from local IPs (related to #5).
This commit is contained in:
Bruno Bernardino
2024-04-08 20:53:28 +01:00
parent 4f97609ebb
commit 5a85dd224e
8 changed files with 40 additions and 14 deletions

View File

@@ -6,6 +6,7 @@ import { FormField, generateFieldHtml, getFormDataField } from '/lib/form-utils.
import { createVerificationCode, getUserByEmail, updateUser, validateVerificationCode } from '/lib/data/user.ts';
import { sendVerifyEmailEmail } from '/lib/providers/brevo.ts';
import { FreshContextState } from '/lib/types.ts';
import { isEmailEnabled } from '/lib/config.ts';
interface Data {
error?: string;
@@ -62,6 +63,12 @@ export const handler: Handlers<Data, FreshContextState> = {
throw new Error('Email not found or invalid password.');
}
if (!isEmailEnabled() && !user.extra.is_email_verified) {
user.extra.is_email_verified = true;
await updateUser(user);
}
if (!user.extra.is_email_verified) {
const code = getFormDataField(formData, 'verification-code');