VerifyEmailController.php (919B)
1 <?php 2 3 namespace App\Http\Controllers\Auth; 4 5 use App\Http\Controllers\Controller; 6 use App\Providers\RouteServiceProvider; 7 use Illuminate\Auth\Events\Verified; 8 use Illuminate\Foundation\Auth\EmailVerificationRequest; 9 use Illuminate\Http\RedirectResponse; 10 11 class VerifyEmailController extends Controller 12 { 13 /** 14 * Mark the authenticated user's email address as verified. 15 */ 16 public function __invoke(EmailVerificationRequest $request): RedirectResponse 17 { 18 if ($request->user() == null) { 19 return redirect()->route("/"); 20 } 21 if ($request->user()->hasVerifiedEmail()) { 22 return redirect()->intended(RouteServiceProvider::HOME . '?verified=1'); 23 } 24 25 if ($request->user()->markEmailAsVerified()) { 26 event(new Verified($request->user())); 27 } 28 29 return redirect()->intended(RouteServiceProvider::HOME . '?verified=1'); 30 } 31 }