fail('Invalid verification link', null, 404); } if (! hash_equals(sha1($user->getEmailForVerification()), $hash)) { return $this->fail('Invalid verification link', null, 403); } if ($user->hasVerifiedEmail()) { return $this->ok(['already_verified' => true], 'Email already verified'); } $user->markEmailAsVerified(); return $this->ok([ 'verified' => true, 'email' => $user->email, ], 'Email verified'); } /** * Send (or resend) the verification email to the authenticated user. */ public function resend(Request $request): JsonResponse { $user = $request->user(); if ($user->hasVerifiedEmail()) { return $this->ok(['already_verified' => true], 'Email already verified'); } $user->sendEmailVerificationNotification(); return $this->ok([ 'sent' => true, 'destination' => $user->email, ], 'Verification email sent'); } }