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({