remove debug logs, add proper email subject lines
This commit is contained in:
@@ -14,37 +14,26 @@ export const POST: RequestHandler = async ({ request }) => {
|
||||
const body = await request.json();
|
||||
const { email, name, subscription_level } = body;
|
||||
|
||||
console.log('[create/account] received', JSON.stringify({ email, name, subscription_level }));
|
||||
|
||||
if (!email || typeof email !== 'string') {
|
||||
console.log('[create/account] missing email');
|
||||
error(400, 'email is required');
|
||||
}
|
||||
if (!subscription_level || typeof subscription_level !== 'string') {
|
||||
console.log('[create/account] missing subscription_level');
|
||||
error(400, 'subscription_level is required');
|
||||
}
|
||||
|
||||
console.log('[create/account] checking subscription level');
|
||||
const level = await prisma.subscriptionLevel.findFirst({
|
||||
where: { name: subscription_level }
|
||||
});
|
||||
if (!level) {
|
||||
console.log('[create/account] subscription_level not found:', subscription_level);
|
||||
error(400, `subscription_level "${subscription_level}" not found`);
|
||||
}
|
||||
console.log('[create/account] subscription level found:', level.id, level.name);
|
||||
|
||||
console.log('[create/account] checking for existing user');
|
||||
let user = await prisma.user.findUnique({ where: { email } });
|
||||
console.log('[create/account] existing user:', user ? user.id : 'none');
|
||||
|
||||
if (!user) {
|
||||
const tempPassword = crypto.randomUUID().replace(/-/g, '').slice(0, 20);
|
||||
console.log('[create/account] generated temp password');
|
||||
|
||||
try {
|
||||
console.log('[create/account] calling signUpEmail for:', email);
|
||||
await auth.api.signUpEmail({
|
||||
body: {
|
||||
email,
|
||||
@@ -52,13 +41,9 @@ export const POST: RequestHandler = async ({ request }) => {
|
||||
name: name ?? email.split('@')[0]
|
||||
}
|
||||
});
|
||||
console.log('[create/account] signUpEmail succeeded');
|
||||
|
||||
console.log('[create/account] fetching new user record');
|
||||
user = await prisma.user.findUnique({ where: { email } });
|
||||
console.log('[create/account] user fetched:', user?.id);
|
||||
|
||||
console.log('[create/account] querying verification table');
|
||||
const verification = await prisma.verification.findFirst({
|
||||
where: {
|
||||
identifier: email,
|
||||
@@ -66,16 +51,14 @@ export const POST: RequestHandler = async ({ request }) => {
|
||||
},
|
||||
orderBy: { createdAt: 'desc' }
|
||||
});
|
||||
console.log('[create/account] verification found:', verification ? verification.id : 'none');
|
||||
|
||||
const verifyUrl = verification
|
||||
? `${BETTER_AUTH_URL}/api/auth/verify-email?token=${verification.value}&callbackURL=/login?verified=true`
|
||||
: `${BETTER_AUTH_URL}/login`;
|
||||
console.log('[create/account] verifyUrl:', verifyUrl);
|
||||
|
||||
console.log('[create/account] sending automated-user-registration email');
|
||||
const regResult = await sendMail({
|
||||
await sendMail({
|
||||
to: email,
|
||||
subject: 'Your account is ready',
|
||||
templateId: 'automated-user-registration',
|
||||
data: {
|
||||
firstName: name ?? email.split('@')[0],
|
||||
@@ -84,22 +67,18 @@ export const POST: RequestHandler = async ({ request }) => {
|
||||
loginUrl: `${BETTER_AUTH_URL}/login`
|
||||
}
|
||||
});
|
||||
console.log('[create/account] automated-user-registration sent:', JSON.stringify(regResult));
|
||||
} catch (err) {
|
||||
console.error('[create/account] FAILED - creating user:', err);
|
||||
console.error('Failed to create user:', err);
|
||||
error(500, 'Failed to create account');
|
||||
}
|
||||
}
|
||||
|
||||
if (!user) {
|
||||
console.log('[create/account] FAILED - no user object');
|
||||
error(500, 'Failed to find or create user');
|
||||
}
|
||||
|
||||
const key = generateLicenseKey();
|
||||
console.log('[create/account] generated license key:', key);
|
||||
|
||||
console.log('[create/account] saving license key to DB');
|
||||
await prisma.licenseKey.create({
|
||||
data: {
|
||||
key,
|
||||
@@ -108,24 +87,21 @@ export const POST: RequestHandler = async ({ request }) => {
|
||||
userId: user.id
|
||||
}
|
||||
});
|
||||
console.log('[create/account] license key saved');
|
||||
|
||||
try {
|
||||
console.log('[create/account] sending license-key-delivery email');
|
||||
const keyResult = await sendMail({
|
||||
await sendMail({
|
||||
to: email,
|
||||
subject: 'Your Rhemawave License Key',
|
||||
templateId: 'license-key-delivery',
|
||||
data: {
|
||||
firstName: name ?? 'Valued Customer',
|
||||
license_key: key
|
||||
}
|
||||
});
|
||||
console.log('[create/account] license-key-delivery sent:', JSON.stringify(keyResult));
|
||||
} catch (e) {
|
||||
console.error('[create/account] FAILED - sending license key email:', e);
|
||||
console.error('Failed to send license key email:', e);
|
||||
}
|
||||
|
||||
console.log('[create/account] returning success for user:', user.id);
|
||||
return json({
|
||||
success: true,
|
||||
message: 'Account and license key created',
|
||||
|
||||
Reference in New Issue
Block a user