]> BookStack Code Mirror - bookstack/blob - app/Http/Middleware/Authenticate.php
Initial commit
[bookstack] / app / Http / Middleware / Authenticate.php
1 <?php
2
3 namespace Oxbow\Http\Middleware;
4
5 use Closure;
6 use Illuminate\Contracts\Auth\Guard;
7
8 class Authenticate
9 {
10     /**
11      * The Guard implementation.
12      *
13      * @var Guard
14      */
15     protected $auth;
16
17     /**
18      * Create a new filter instance.
19      *
20      * @param  Guard  $auth
21      * @return void
22      */
23     public function __construct(Guard $auth)
24     {
25         $this->auth = $auth;
26     }
27
28     /**
29      * Handle an incoming request.
30      *
31      * @param  \Illuminate\Http\Request  $request
32      * @param  \Closure  $next
33      * @return mixed
34      */
35     public function handle($request, Closure $next)
36     {
37         if ($this->auth->guest()) {
38             if ($request->ajax()) {
39                 return response('Unauthorized.', 401);
40             } else {
41                 return redirect()->guest('auth/login');
42             }
43         }
44
45         return $next($request);
46     }
47 }