Passed
Push — master ( 6c48fd...75d922 )
by Orkhan
01:51
created

WhitelistMiddleware::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 2
dl 0
loc 4
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace Orkhanahmadov\LaravelIpMiddleware;
4
5
use Closure;
6
use Illuminate\Support\Arr;
7
use Illuminate\Http\Request;
8
9
class WhitelistMiddleware extends Middleware
10
{
11
    /**
12
     * Handle an incoming request.
13
     *
14
     * @param Request $request
15
     * @param Closure $next
16
     * @param array $whitelist
17
     *
18
     * @return mixed
19
     */
20
    public function handle($request, Closure $next, ...$whitelist)
21
    {
22
        if ($this->shouldCheck() && !in_array($this->realIp($request), Arr::flatten($whitelist))) {
23
            $this->application->abort($this->errorCode);
24
        }
25
26
        return $next($request);
27
    }
28
}
29