MessageSentListener   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 29
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 8
c 1
b 0
f 0
dl 0
loc 29
rs 10
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A handle() 0 8 2
A __construct() 0 3 1
1
<?php
2
3
namespace App\Listeners;
4
5
use App\Models\Message;
6
use App\Services\TenantManager;
7
use Illuminate\Mail\Events\MessageSent;
8
9
class MessageSentListener
10
{
11
    private $tenantManager;
12
13
    /**
14
     * Create the event listener.
15
     *
16
     * @return void
17
     */
18
    public function __construct(TenantManager $tenantManager)
19
    {
20
        $this->tenantManager = $tenantManager;
21
    }
22
23
    /**
24
     * Handle the event.
25
     *
26
     * @param MessageSent $event
27
     *
28
     * @return void
29
     */
30
    public function handle(MessageSent $event)
31
    {
32
        if (isset($event->data['tenantIdentifier'])) {
33
            $this->tenantManager->loadTenant($event->data['tenantIdentifier']);
34
35
            $message = Message::findOrFail($event->data['messageId']);
36
            $message->sent_at = now();
0 ignored issues
show
Bug introduced by
The property sent_at does not seem to exist on Illuminate\Database\Eloquent\Collection.
Loading history...
37
            $message->save();
38
        }
39
    }
40
}
41