DetachingRoles::handle()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 10

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 3.0416

Importance

Changes 0
Metric Value
dl 0
loc 10
rs 9.9332
c 0
b 0
f 0
ccs 5
cts 6
cp 0.8333
cc 3
nc 3
nop 1
crap 3.0416
1
<?php namespace Arcanedev\LaravelAuth\Listeners\Users;
2
3
use Arcanedev\LaravelAuth\Events\Users\DeletingUser;
4
5
/**
6
 * Class     DetachingRoles
7
 *
8
 * @package  Arcanedev\LaravelAuth\Listeners\Users
9
 * @author   ARCANEDEV <[email protected]>
10
 */
11
class DetachingRoles
12
{
13
    /* -----------------------------------------------------------------
14
     |  Main Methods
15
     | -----------------------------------------------------------------
16
     */
17
18
    /**
19
     * Handle the event.
20
     *
21
     * @param  \Arcanedev\LaravelAuth\Events\Users\DeletingUser  $event
22
     *
23
     * @return boolean
24
     */
25 6
    public function handle(DeletingUser $event)
26
    {
27 6
        if ($event->user->isAdmin())
28 3
            return false;
29
30 3
        if ($event->user->isForceDeleting())
31
            $event->user->detachAllRoles(false);
32
33 3
        return true;
34
    }
35
}
36