ldc-gen-game-web/app/Mail/Won/WinningProofSubmitedMail.php
2023-12-13 10:01:52 +01:00

62 lines
1.7 KiB
PHP

<?php
namespace App\Mail\Won;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
use Illuminate\Mail\Mailables\Address;
use Illuminate\Mail\Mailables\Content;
use Illuminate\Mail\Mailables\Envelope;
use Illuminate\Queue\SerializesModels;
use Illuminate\Support\Facades\View;
class WinningProofSubmitedMail extends Mailable implements ShouldQueue
{
use Queueable;
use SerializesModels;
/**
* Create a new message instance.
*
* @param \Illuminate\Mail\Mailables\Address $recipient The winner that has submited winning proof.
* @param string $game_name The game name.
* @return void
*/
public function __construct(
protected Address $recipient,
protected string $game_name,
) {
}
/**
* Get the message envelope.
*
* @return \Illuminate\Mail\Mailables\Envelope
*/
public function envelope(): \Illuminate\Mail\Mailables\Envelope
{
return new Envelope(
to: [$this->recipient],
subject: trans('Nous avons recu vos preuves de gains'),
);
}
/**
* Get the message content definition.
*
* @return \Illuminate\Mail\Mailables\Content
*/
public function content(): \Illuminate\Mail\Mailables\Content
{
// * Fix for async usage
View::addNamespace('theme', resource_path('theme/mounted/views'));
return new Content(
markdown: 'theme::mails.submited-proof',
with: [
'first_name' => $this->recipient->name ?? $this->recipient->address,
'game_name' => $this->game_name,
],
);
}
}