From b59e3f99ee675f559a538fae3358ed6085ba75b0 Mon Sep 17 00:00:00 2001 From: Akshay Date: Mon, 24 Nov 2025 12:27:31 +0530 Subject: [PATCH] fix(events): Improve company email extraction logic for event registration - Add defensive checks to handle both array and object company data structures - Extract company email from either array format or direct object property - Add console logging for debugging company data and extracted email values - Prevent potential undefined errors when accessing company email during registration flow --- app/api/events/[slug]/register/route.ts | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/app/api/events/[slug]/register/route.ts b/app/api/events/[slug]/register/route.ts index 00598310..4998661d 100644 --- a/app/api/events/[slug]/register/route.ts +++ b/app/api/events/[slug]/register/route.ts @@ -125,9 +125,17 @@ export async function POST( const { sendEventRegistrationEmails } = await import('@/lib/email/event-emails'); // Get company email if available - const companyEmail = Array.isArray(event.companies) && event.companies.length > 0 - ? event.companies[0]?.email - : undefined; + console.log('Event companies data:', event.companies); + + let companyEmail: string | undefined; + + if (Array.isArray(event.companies)) { + companyEmail = event.companies[0]?.email; + } else if (event.companies && typeof event.companies === 'object') { + companyEmail = (event.companies as { email?: string }).email; + } + + console.log('Extracted company email:', companyEmail); await sendEventRegistrationEmails({ userEmail: user.email!,