From 0f99440c8f7553d98216ae710343f70e93875cde Mon Sep 17 00:00:00 2001 From: ronan Date: Wed, 4 Sep 2024 18:51:37 -0700 Subject: [PATCH] add domain in registration --- src/actions/auth.action.ts | 2 ++ src/components/auth/register/form.tsx | 3 ++- src/interfaces/auth.interface.ts | 1 + src/validations/auth.validation.ts | 2 ++ 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/actions/auth.action.ts b/src/actions/auth.action.ts index f8fb553..ce9d2e1 100644 --- a/src/actions/auth.action.ts +++ b/src/actions/auth.action.ts @@ -10,6 +10,7 @@ export const authRegisterAction = async ({ email, password, path, + domain, }: IRegister) => { try { const emailAlreadyExists = await prismadb.user.findFirst({ @@ -30,6 +31,7 @@ export const authRegisterAction = async ({ name, email, password: await hash(password, 10), + domain }, }); diff --git a/src/components/auth/register/form.tsx b/src/components/auth/register/form.tsx index 584d962..2caf30a 100644 --- a/src/components/auth/register/form.tsx +++ b/src/components/auth/register/form.tsx @@ -25,7 +25,8 @@ const Form = () => { name: formData.get('name') as string, email: formData.get('email') as string, password: formData.get('password') as string, - path: window.location.pathname + path: window.location.pathname, + domain: window.location.hostname.replace('www.','') }; const validations = registerSchema.safeParse(data); diff --git a/src/interfaces/auth.interface.ts b/src/interfaces/auth.interface.ts index 9c3205d..ebe4498 100644 --- a/src/interfaces/auth.interface.ts +++ b/src/interfaces/auth.interface.ts @@ -3,4 +3,5 @@ export interface IRegister { email: string; password: string; path: string; + domain: string; } diff --git a/src/validations/auth.validation.ts b/src/validations/auth.validation.ts index bf797a9..543d1f8 100644 --- a/src/validations/auth.validation.ts +++ b/src/validations/auth.validation.ts @@ -13,6 +13,8 @@ export const registerSchema = z.object({ .string({ required_error: 'Password is required' }) .min(8, { message: 'Password must be at least 8 characters' }) .max(100, { message: 'Password must be less than 100 characters' }), + domain: z + .string({ required_error: 'Domain is required' }), }); export const loginSchema = z.object({