Fix broken verification button URLs in emails
All checks were successful
Build And Push Image / docker (push) Successful in 3m11s
All checks were successful
Build And Push Image / docker (push) Successful in 3m11s
- Fix malformed verification links caused by config.public.domain - Use absolute HTTPS URLs for verification links in both registration and verification emails - Ensures verification buttons work correctly in all email clients - Fixes the 'app://renderer/' URL prefix issue seen in email clients
This commit is contained in:
@@ -76,9 +76,8 @@ export default defineEventHandler(async (event) => {
|
|||||||
const { generateEmailVerificationToken } = await import('~/server/utils/email-tokens');
|
const { generateEmailVerificationToken } = await import('~/server/utils/email-tokens');
|
||||||
const verificationToken = await generateEmailVerificationToken(user.id, email);
|
const verificationToken = await generateEmailVerificationToken(user.id, email);
|
||||||
|
|
||||||
// Get configuration
|
// Get configuration - ensure proper absolute URL
|
||||||
const config = useRuntimeConfig();
|
const verificationLink = `https://portal.monacousa.org/api/auth/verify-email?token=${verificationToken}`;
|
||||||
const verificationLink = `${config.public.domain}/api/auth/verify-email?token=${verificationToken}`;
|
|
||||||
|
|
||||||
// Send verification email
|
// Send verification email
|
||||||
const { getEmailService } = await import('~/server/utils/email');
|
const { getEmailService } = await import('~/server/utils/email');
|
||||||
|
|||||||
@@ -151,9 +151,8 @@ export default defineEventHandler(async (event) => {
|
|||||||
|
|
||||||
const emailService = await getEmailService();
|
const emailService = await getEmailService();
|
||||||
const verificationToken = await generateEmailVerificationToken(createdKeycloakId, body.email);
|
const verificationToken = await generateEmailVerificationToken(createdKeycloakId, body.email);
|
||||||
const config = useRuntimeConfig();
|
// Fix: Point to user-friendly verification page instead of direct API endpoint with absolute URL
|
||||||
// Fix: Point to user-friendly verification page instead of direct API endpoint
|
const verificationLink = `https://portal.monacousa.org/auth/verify?token=${verificationToken}`;
|
||||||
const verificationLink = `${config.public.domain}/auth/verify?token=${verificationToken}`;
|
|
||||||
|
|
||||||
await emailService.sendWelcomeEmail(body.email, {
|
await emailService.sendWelcomeEmail(body.email, {
|
||||||
firstName: body.first_name,
|
firstName: body.first_name,
|
||||||
|
|||||||
Reference in New Issue
Block a user