Completed
Push — master ( a9d673...d0cde4 )
by Arjay
06:58
created

CanAtLeastMiddleware::handle()   A

Complexity

Conditions 4
Paths 4

Size

Total Lines 10
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 20

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 10
ccs 0
cts 8
cp 0
rs 9.2
cc 4
eloc 5
nc 4
nop 3
crap 20
1
<?php
2
3
namespace Yajra\Acl\Middleware;
4
5
use Closure;
6
7
class CanAtLeastMiddleware
8
{
9
    /**
10
     * Handle an incoming request.
11
     *
12
     * @param  \Illuminate\Http\Request $request
13
     * @param  \Closure $next
14
     * @param  array|string $permissions
15
     * @return mixed
16
     */
17
    public function handle($request, Closure $next, $permissions)
18
    {
19
        $abilities = is_array($permissions) ? $permissions : explode(',', $permissions);
20
21
        if (! auth()->check() || ! auth()->user()->canAtLeast($abilities)) {
22
            abort(403, 'You are not allowed to view this content!');
23
        }
24
25
        return $next($request);
26
    }
27
}
28