33 lines
786 B
PHP
33 lines
786 B
PHP
<?php
|
|
|
|
namespace App\Mail;
|
|
|
|
use Illuminate\Bus\Queueable;
|
|
use Illuminate\Contracts\Queue\ShouldQueue;
|
|
use Illuminate\Mail\Mailable;
|
|
use Illuminate\Mail\Mailables\Address;
|
|
use Illuminate\Mail\Mailables\Envelope;
|
|
use Illuminate\Queue\SerializesModels;
|
|
|
|
abstract class BaseMailable extends Mailable implements ShouldQueue
|
|
{
|
|
use Queueable, SerializesModels;
|
|
|
|
public function envelope(): Envelope
|
|
{
|
|
return new Envelope(
|
|
from: new Address(
|
|
config('mail.from.address'),
|
|
$this->getFromName()
|
|
),
|
|
);
|
|
}
|
|
|
|
public function getFromName(): string
|
|
{
|
|
$locale = $this->locale ?? app()->getLocale();
|
|
|
|
return $locale === 'ar' ? 'مكتب ليبرا للمحاماة' : 'Libra Law Firm';
|
|
}
|
|
}
|