Tests, UX improvements.
This commit is contained in:
parent
4e6f5d36b8
commit
0ae18f495e
63 changed files with 1384 additions and 2330 deletions
|
|
@ -113,16 +113,35 @@ export default defineEventHandler(async (event) => {
|
|||
const result = await Event.findByIdAndUpdate(
|
||||
eventData._id,
|
||||
{ $push: { registrations: registration } },
|
||||
{ new: true, runValidators: false }
|
||||
{ new: true, runValidators: false },
|
||||
);
|
||||
const newRegistration = result.registrations[result.registrations.length - 1];
|
||||
const newRegistration =
|
||||
result.registrations[result.registrations.length - 1];
|
||||
|
||||
// Send confirmation email using Resend
|
||||
try {
|
||||
await sendEventRegistrationEmail(registration, eventData);
|
||||
} catch (emailError) {
|
||||
// Log error but don't fail the registration
|
||||
console.error("Failed to send confirmation email:", emailError);
|
||||
// Log activity
|
||||
if (member) {
|
||||
logActivity(member._id, 'event_registered', {
|
||||
eventId: eventData._id,
|
||||
eventTitle: eventData.title,
|
||||
eventSlug: eventData.slug
|
||||
})
|
||||
}
|
||||
|
||||
// Send confirmation email — respect member notification preferences
|
||||
const shouldSendEventEmail =
|
||||
!member || member.notifications?.events !== false;
|
||||
if (shouldSendEventEmail) {
|
||||
try {
|
||||
await sendEventRegistrationEmail(registration, eventData);
|
||||
if (member) {
|
||||
logActivity(member._id, 'email_sent', {
|
||||
emailType: 'event_registration',
|
||||
subject: `You're registered for ${eventData.title}`
|
||||
})
|
||||
}
|
||||
} catch (emailError) {
|
||||
console.error("Failed to send confirmation email:", emailError);
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue