]> BookStack Code Mirror - bookstack/blob - app/Http/Middleware/PermissionMiddleware.php
Closes #69. Implemented and tested memcached.
[bookstack] / app / Http / Middleware / PermissionMiddleware.php
1 <?php
2
3 namespace BookStack\Http\Middleware;
4
5 use Closure;
6 use Illuminate\Support\Facades\Session;
7
8 class PermissionMiddleware
9 {
10     /**
11      * Handle an incoming request.
12      *
13      * @param  \Illuminate\Http\Request $request
14      * @param  \Closure                 $next
15      * @param                           $permission
16      * @return mixed
17      */
18     public function handle($request, Closure $next, $permission)
19     {
20
21         if (!$request->user() || !$request->user()->can($permission)) {
22             Session::flash('error', trans('errors.permission'));
23             return redirect()->back();
24         }
25
26         return $next($request);
27     }
28 }