mirror of
https://github.com/documenso/documenso.git
synced 2025-11-22 20:51:33 +10:00
fix: add sign up hook
This commit is contained in:
@ -19,12 +19,4 @@ export const onAuthorize = async (user: AuthorizeUser, c: Context<HonoAuthContex
|
||||
await createSession(sessionToken, user.userId, metadata);
|
||||
|
||||
await setSessionCookie(c, sessionToken);
|
||||
|
||||
// Todo.
|
||||
// Create the Stripe customer and attach it to the user if it doesn't exist.
|
||||
// if (user.customerId === null && IS_BILLING_ENABLED()) {
|
||||
// await getStripeCustomerByUser(user).catch((err) => {
|
||||
// console.error(err);
|
||||
// });
|
||||
// }
|
||||
};
|
||||
|
||||
@ -6,6 +6,7 @@ import { z } from 'zod';
|
||||
|
||||
import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app';
|
||||
import { AppError, AppErrorCode } from '@documenso/lib/errors/app-error';
|
||||
import { onCreateUserHook } from '@documenso/lib/server-only/user/create-user';
|
||||
import { env } from '@documenso/lib/utils/env';
|
||||
import { prisma } from '@documenso/prisma';
|
||||
import { UserSecurityAuditLogType } from '@documenso/prisma/client';
|
||||
@ -232,6 +233,11 @@ export const googleRoute = new Hono<HonoAuthContext>()
|
||||
return user;
|
||||
});
|
||||
|
||||
await onCreateUserHook(createdUser).catch((err) => {
|
||||
// Todo: Add logging.
|
||||
console.error(err);
|
||||
});
|
||||
|
||||
await onAuthorize({ userId: createdUser.id }, c);
|
||||
|
||||
return c.redirect(redirectPath, 302);
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
import { hash } from '@node-rs/bcrypt';
|
||||
import type { User } from '@prisma/client';
|
||||
import { TeamMemberInviteStatus } from '@prisma/client';
|
||||
|
||||
import { getStripeCustomerByUser } from '@documenso/ee/server-only/stripe/get-customer';
|
||||
@ -70,6 +71,22 @@ export const createUser = async ({ name, email, password, signature, url }: Crea
|
||||
return user;
|
||||
});
|
||||
|
||||
await onCreateUserHook(user).catch((err) => {
|
||||
// Todo: Add logging.
|
||||
console.error(err);
|
||||
});
|
||||
|
||||
return user;
|
||||
};
|
||||
|
||||
/**
|
||||
* Should be run after a user is created.
|
||||
*
|
||||
* @returns User
|
||||
*/
|
||||
export const onCreateUserHook = async (user: User) => {
|
||||
const { email } = user;
|
||||
|
||||
const acceptedTeamInvites = await prisma.teamMemberInvite.findMany({
|
||||
where: {
|
||||
status: TeamMemberInviteStatus.ACCEPTED,
|
||||
|
||||
@ -1,10 +1,25 @@
|
||||
export const appLog = (context: string, ...args: Parameters<typeof console.log>) => {
|
||||
// if (env('NEXT_DEBUG') === 'true') {
|
||||
console.log(`[${context}]: ${args[0]}`, ...args.slice(1));
|
||||
// }
|
||||
import { env } from './env';
|
||||
|
||||
/**
|
||||
* Which areas to debug, keyed by context.
|
||||
*/
|
||||
const debugging: Record<string, boolean> = {
|
||||
auth: env('NEXT_DEBUG_AUTH') === 'true',
|
||||
job: env('NEXT_DEBUG_JOB') === 'true',
|
||||
middleware: env('NEXT_DEBUG_MIDDLEWARE') === 'true',
|
||||
};
|
||||
|
||||
export class AppLogger {
|
||||
export const appLog = (context: string, ...args: Parameters<typeof console.log>) => {
|
||||
if (debugging[context.toLowerCase()] === false) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (env('NEXT_DEBUG') === 'true') {
|
||||
console.log(`[${context}]: ${args[0]}`, ...args.slice(1));
|
||||
}
|
||||
};
|
||||
|
||||
export class AppDebugger {
|
||||
public context: string;
|
||||
|
||||
constructor(context: string) {
|
||||
|
||||
Reference in New Issue
Block a user