diff --git a/app/Mail/ContactMessageMail.php b/app/Mail/ContactMessageMail.php index 842ccad..d111ebe 100644 --- a/app/Mail/ContactMessageMail.php +++ b/app/Mail/ContactMessageMail.php @@ -4,6 +4,7 @@ namespace App\Mail; use Illuminate\Bus\Queueable; use Illuminate\Mail\Mailable; +use Illuminate\Mail\Mailables\Address; use Illuminate\Mail\Mailables\Content; use Illuminate\Mail\Mailables\Envelope; use Illuminate\Queue\SerializesModels; @@ -23,7 +24,13 @@ class ContactMessageMail extends Mailable public function envelope(): Envelope { + $display = trim((string) ($this->fromName ?: $this->companyName)); + $fromAddress = (string) config('mail.from.address'); + return new Envelope( + from: $display !== '' && $fromAddress !== '' + ? new Address($fromAddress, $display) + : null, subject: $this->subjectLine, replyTo: $this->replyToAddress ? [$this->replyToAddress] : [], ); diff --git a/app/Services/Comms/EmailService.php b/app/Services/Comms/EmailService.php index 0c92f2d..9c66ad5 100644 --- a/app/Services/Comms/EmailService.php +++ b/app/Services/Comms/EmailService.php @@ -33,9 +33,11 @@ class EmailService $logoUrl = OrganizationBranding::emailLogoUrl($organization); $companyName = $organization->name; } + // Client-facing From display: org/company name, never the Ladill product brand. + $displayName = trim((string) ($fromName ?: $companyName)) ?: null; try { - Mail::to($to)->send(new ContactMessageMail($subject, $body, $fromName, $replyTo, $logoUrl, $companyName)); + Mail::to($to)->send(new ContactMessageMail($subject, $body, $displayName, $replyTo, $logoUrl, $companyName)); return true; } catch (\Throwable $e) { diff --git a/app/Services/Frontdesk/NotificationDispatcher.php b/app/Services/Frontdesk/NotificationDispatcher.php index 613cb2c..b42be27 100644 --- a/app/Services/Frontdesk/NotificationDispatcher.php +++ b/app/Services/Frontdesk/NotificationDispatcher.php @@ -220,10 +220,11 @@ class NotificationDispatcher } else { try { $html = OrganizationBranding::wrapEmailHtml(nl2br(e($message)), $organization); + $fromName = trim((string) ($credential->bird_from_name ?: $organization->name)) ?: null; $sent = $this->customerEmail->send( $apiKey, (string) $credential->bird_from_email, - $credential->bird_from_name, + $fromName, (string) $host->email, $title, $html,