Issues (69)

src/Middleware/CheckRole.php (1 issue)

Severity
1
<?php
2
3
namespace Thinkstudeo\Rakshak\Middleware;
4
5
use Illuminate\Http\Response;
6
7
class CheckRole
8
{
9
    /**
10
     * Handle the incoming request.
11
     *
12
     * @param  \Illuminate\Http\Request  $request
13
     * @param  \Closure  $next
14
     * @param  string  $role
15
     * @return mixed
16
     */
17
    public function handle($request, \Closure $next, $role)
18
    {
19
        if (! $request->user()) {
20
            return redirect(route('login'));
21
        }
22
23
        $roles = is_string($role) ? explode('|', $role) : $role;
0 ignored issues
show
The condition is_string($role) is always true.
Loading history...
24
25
        if (! $request->user()->hasAnyRole($roles)) {
26
            abort(Response::HTTP_FORBIDDEN, 'You do not have the permission.');
27
        }
28
29
        return $next($request);
30
    }
31
}
32