Subversion-Projekte lars-tiefland.laravel_shop

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 1
<?php
2
 
3
namespace Illuminate\Auth\Middleware;
4
 
5
use Closure;
6
use Illuminate\Contracts\Auth\MustVerifyEmail;
7
use Illuminate\Support\Facades\Redirect;
8
use Illuminate\Support\Facades\URL;
9
 
10
class EnsureEmailIsVerified
11
{
12
    /**
13
     * Handle an incoming request.
14
     *
15
     * @param  \Illuminate\Http\Request  $request
16
     * @param  \Closure  $next
17
     * @param  string|null  $redirectToRoute
18
     * @return \Illuminate\Http\Response|\Illuminate\Http\RedirectResponse|null
19
     */
20
    public function handle($request, Closure $next, $redirectToRoute = null)
21
    {
22
        if (! $request->user() ||
23
            ($request->user() instanceof MustVerifyEmail &&
24
            ! $request->user()->hasVerifiedEmail())) {
25
            return $request->expectsJson()
26
                    ? abort(403, 'Your email address is not verified.')
27
                    : Redirect::guest(URL::route($redirectToRoute ?: 'verification.notice'));
28
        }
29
 
30
        return $next($request);
31
    }
32
}