ReservationMailer::send()   A
last analyzed

Complexity

Conditions 4
Paths 2

Size

Total Lines 31

Duplication

Lines 8
Ratio 25.81 %

Code Coverage

Tests 13
CRAP Score 4.5039

Importance

Changes 0
Metric Value
dl 8
loc 31
ccs 13
cts 19
cp 0.6842
rs 9.424
c 0
b 0
f 0
cc 4
nc 2
nop 2
crap 4.5039
1
<?php namespace VojtaSvoboda\Reservations\Mailers;
2
3
use App;
4
use Mail;
5
use Request;
6
use VojtaSvoboda\Reservations\Models\Reservation;
7
8
class ReservationMailer extends BaseMailer
9
{
10
    /**
11
     * Send reservation confirmation mail.
12
     *
13
     * @param Reservation $reservation
14
     * @param int $reservationsCount
15
     */
16 5
    public function send(Reservation $reservation, $reservationsCount = 0)
17
    {
18
        // init
19 5
        $locale = App::getLocale();
20 5
        $appUrl = App::make('url')->to('/');
21 5
        $recipients = $this->initRecipients();
22 5
        $recipients['email'] = $reservation->email;
23 5
        $recipients['name'] = trim($reservation->name . ' ' . $reservation->lastname);
24
25 5
        $template = $this->getTemplateIdent('reservation');
26
27
        $templateParameters = [
28 5
            'site' => $appUrl,
29 5
            'reservation' => $reservation,
30 5
            'locale' => $locale,
31 5
            'reservationsCount' => $reservationsCount,
32
        ];
33
34 5
        if (App::environment() === 'testing') {
35 5
            return;
36
        }
37
38 View Code Duplication
        Mail::send($template, $templateParameters, function($message) use ($recipients)
39
        {
40
            $message->to($recipients['email'], $recipients['name']);
41
42
            if (!empty($recipients['bcc_email']) && !empty($recipients['bcc_name'])) {
43
                $message->bcc($recipients['bcc_email'], $recipients['bcc_name']);
44
            }
45
        });
46
    }
47
}
48