From 8d3029c877dae59f1b062ce30093f5b422c25169 Mon Sep 17 00:00:00 2001 From: Darko Gjorgjijoski Date: Fri, 3 Apr 2026 23:30:13 +0200 Subject: [PATCH] Fix invitation email: load relationships and handle mail failures gracefully The CompanyInvitationMail accesses company, role, and invitedBy relationships which weren't loaded before sending. Also wrap mail send in try-catch so the invitation is still created even if the mailer is misconfigured (logs a warning instead of crashing). --- app/Services/InvitationService.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/Services/InvitationService.php b/app/Services/InvitationService.php index ab97855f..00877ea9 100644 --- a/app/Services/InvitationService.php +++ b/app/Services/InvitationService.php @@ -52,7 +52,13 @@ class InvitationService 'expires_at' => Carbon::now()->addDays(7), ]); - Mail::to($email)->send(new CompanyInvitationMail($invitation)); + $invitation->load(['company', 'role', 'invitedBy']); + + try { + Mail::to($email)->send(new CompanyInvitationMail($invitation)); + } catch (\Exception $e) { + \Log::warning('Failed to send invitation email to '.$email.': '.$e->getMessage()); + } return $invitation; }