Issues (67)

app/Mail/Auth/VerifyEmail.php (1 issue)

Severity
1
<?php
2
3
4
namespace App\Mail\Auth;
5
6
7
use Illuminate\Bus\Queueable;
8
use Illuminate\Mail\Mailable;
9
use Illuminate\Queue\SerializesModels;
10
use Illuminate\Support\Carbon;
11
use Illuminate\Support\Facades\Config;
12
use Illuminate\Support\Facades\URL;
13
14
class VerifyEmail extends Mailable
15
{
16
    use Queueable, SerializesModels;
0 ignored issues
show
The trait Illuminate\Queue\SerializesModels requires some properties which are not provided by App\Mail\Auth\VerifyEmail: $id, $relations, $class, $keyBy
Loading history...
17
18
    private $user;
19
    private $callback;
20
21
    public function __construct($user, string $callback = null)
22
    {
23
        $this->user = $user;
24
        $this->callback = $callback;
25
    }
26
27
    public function build()
28
    {
29
        $url = URL::temporarySignedRoute(
30
            'verification.verify',
31
            Carbon::now()->addMinutes(config('auth.verification.expire')),
32
            [
33
                'id' => $this->user->getKey(),
34
                'hash' => sha1($this->user->getEmailForVerification()),
35
                'callback' => $this->callback
36
            ]
37
        );
38
39
        return $this->view('mails.auth.verify-email', [
40
            'url' => $url,
41
        ])->subject('Tripleperformance : Vérifiez votre email');
42
    }
43
}
44