server/src/app/Http/Middleware/Authenticate.php
changeset 139 8d688175513a
parent 2 00e2916104fe
equal deleted inserted replaced
138:3079cbf80006 139:8d688175513a
     1 <?php
     1 <?php
     2 
     2 
     3 namespace CorpusParole\Http\Middleware;
     3 namespace CorpusParole\Http\Middleware;
     4 
     4 
     5 use Closure;
     5 use Closure;
     6 use Illuminate\Contracts\Auth\Guard;
     6 use Illuminate\Support\Facades\Auth;
     7 
     7 
     8 class Authenticate
     8 class Authenticate
     9 {
     9 {
    10     /**
    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      */
       
    22     public function __construct(Guard $auth)
       
    23     {
       
    24         $this->auth = $auth;
       
    25     }
       
    26 
       
    27     /**
       
    28      * Handle an incoming request.
    11      * Handle an incoming request.
    29      *
    12      *
    30      * @param \Illuminate\Http\Request $request
    13      * @param  \Illuminate\Http\Request  $request
    31      * @param \Closure                 $next
    14      * @param  \Closure  $next
    32      *
    15      * @param  string|null  $guard
    33      * @return mixed
    16      * @return mixed
    34      */
    17      */
    35     public function handle($request, Closure $next)
    18     public function handle($request, Closure $next, $guard = null)
    36     {
    19     {
    37         if ($this->auth->guest()) {
    20         if (Auth::guard($guard)->guest()) {
    38             if ($request->ajax()) {
    21             if ($request->ajax() || $request->wantsJson()) {
    39                 return response('Unauthorized.', 401);
    22                 return response('Unauthorized.', 401);
    40             } else {
    23             } else {
    41                 return redirect()->guest('auth/login');
    24                 return redirect()->guest('login');
    42             }
    25             }
    43         }
    26         }
    44 
    27 
    45         return $next($request);
    28         return $next($request);
    46     }
    29     }