Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
2 / 2
CRAP
100.00% covered (success)
100.00%
1 / 1
UpdateHubspotContactTrigger
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
2 / 2
5
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 handle
100.00% covered (success)
100.00%
7 / 7
100.00% covered (success)
100.00%
1 / 1
4
1<?php
2
3namespace App\Listeners\Hubspot;
4
5use App\Events\User\LoggedOut;
6use App\Http\Models\UserInfo;
7use Illuminate\Contracts\Queue\ShouldQueue;
8
9class UpdateHubspotContactTrigger implements ShouldQueue
10{
11    /**
12     * Create the event listener.
13     *
14     * @return void
15     */
16    public function __construct()
17    {
18        //
19    }
20
21    /**
22     * Handle the event.
23     */
24    public function handle(LoggedOut $event): void
25    {
26        $data = $event->data;
27        $userInfo = UserInfo::where('email', $event->user->email)->first();
28
29        $userInfo->signed_into_flymsg_extension = 'No';
30
31        if (filled($event->data) && is_array($event->data) && ! empty(array_filter($event->data))) {
32            $userInfo->sign_out_reason = ";{$data['selectedOption']}";
33            $userInfo->sign_out_text = $data['description'];
34        }
35
36        $userInfo->save();
37    }
38}