Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
80.00% covered (warning)
80.00%
4 / 5
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
RedirectIfAuthenticated
80.00% covered (warning)
80.00%
4 / 5
0.00% covered (danger)
0.00%
0 / 1
4.13
0.00% covered (danger)
0.00%
0 / 1
 handle
80.00% covered (warning)
80.00%
4 / 5
0.00% covered (danger)
0.00%
0 / 1
4.13
1<?php
2
3namespace App\Http\Middleware;
4
5use App\Providers\RouteServiceProvider;
6use Closure;
7use Illuminate\Http\RedirectResponse;
8use Illuminate\Http\Request;
9use Illuminate\Http\Response;
10use Illuminate\Support\Facades\Auth;
11
12class RedirectIfAuthenticated
13{
14    /**
15     * Handle an incoming request.
16     *
17     * @param  Closure(Request): (Response|RedirectResponse)  $next
18     * @param  string|null  ...$guards
19     * @return Response|RedirectResponse
20     */
21    public function handle(Request $request, Closure $next, ...$guards)
22    {
23        $guards = empty($guards) ? [null] : $guards;
24
25        foreach ($guards as $guard) {
26            if (Auth::guard($guard)->check()) {
27                return redirect(RouteServiceProvider::DASHBOARD);
28            }
29        }
30
31        return $next($request);
32    }
33}