ImpersonationNotAllowed   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 45
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 45
rs 10
c 0
b 0
f 0
ccs 7
cts 7
cp 1
wmc 3
lcom 1
cbo 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A handle() 0 6 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Arcanedev\LaravelImpersonator\Http\Middleware;
6
7
use Arcanedev\LaravelImpersonator\Contracts\Impersonator;
8
use Closure;
9
10
/**
11
 * Class     ImpersonationNotAllowed
12
 *
13
 * @author   ARCANEDEV <[email protected]>
14
 */
15
class ImpersonationNotAllowed
16
{
17
    /* -----------------------------------------------------------------
18
     |  Properties
19
     | -----------------------------------------------------------------
20
     */
21
22
    /** @var  \Arcanedev\LaravelImpersonator\Contracts\Impersonator */
23
    protected $impersonator;
24
25
    /* -----------------------------------------------------------------
26
     |  Constructor
27
     | -----------------------------------------------------------------
28
     */
29
30
    /**
31
     * ImpersonationNotAllowed constructor.
32
     *
33
     * @param  \Arcanedev\LaravelImpersonator\Contracts\Impersonator  $impersonator
34
     */
35 4
    public function __construct(Impersonator $impersonator)
36
    {
37 4
        $this->impersonator = $impersonator;
38 4
    }
39
40
    /* -----------------------------------------------------------------
41
     |  Main Methods
42
     | -----------------------------------------------------------------
43
     */
44
45
    /**
46
     * Handle an incoming request.
47
     *
48
     * @param   \Illuminate\Http\Request  $request
49
     * @param   \Closure                  $next
50
     *
51
     * @return  mixed
52
     */
53 4
    public function handle($request, Closure $next)
54
    {
55 4
        return $this->impersonator->isImpersonating()
56 4
            ? redirect()->back()
57 4
            : $next($request);
58
    }
59
}
60