| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | <?phpnamespace Illuminate\Foundation\Auth;use Illuminate\Auth\Access\AuthorizationException;use Illuminate\Auth\Events\Verified;use Illuminate\Http\JsonResponse;use Illuminate\Http\Request;trait VerifiesEmails{    use RedirectsUsers;    /**     * Show the email verification notice.     *     * @param  \Illuminate\Http\Request  $request     * @return \Illuminate\Http\RedirectResponse|\Illuminate\View\View     */    public function show(Request $request)    {        return $request->user()->hasVerifiedEmail()                        ? redirect($this->redirectPath())                        : view('auth.verify');    }    /**     * Mark the authenticated user's email address as verified.     *     * @param  \Illuminate\Http\Request  $request     * @return \Illuminate\Http\JsonResponse|\Illuminate\Http\RedirectResponse     *     * @throws \Illuminate\Auth\Access\AuthorizationException     */    public function verify(Request $request)    {        if (! hash_equals((string) $request->route('id'), (string) $request->user()->getKey())) {            throw new AuthorizationException;        }        if (! hash_equals((string) $request->route('hash'), sha1($request->user()->getEmailForVerification()))) {            throw new AuthorizationException;        }        if ($request->user()->hasVerifiedEmail()) {            return $request->wantsJson()                        ? new JsonResponse([], 204)                        : redirect($this->redirectPath());        }        if ($request->user()->markEmailAsVerified()) {            event(new Verified($request->user()));        }        if ($response = $this->verified($request)) {            return $response;        }        return $request->wantsJson()                    ? new JsonResponse([], 204)                    : redirect($this->redirectPath())->with('verified', true);    }    /**     * The user has been verified.     *     * @param  \Illuminate\Http\Request  $request     * @return mixed     */    protected function verified(Request $request)    {        //    }    /**     * Resend the email verification notification.     *     * @param  \Illuminate\Http\Request  $request     * @return \Illuminate\Http\JsonResponse|\Illuminate\Http\RedirectResponse     */    public function resend(Request $request)    {        if ($request->user()->hasVerifiedEmail()) {            return $request->wantsJson()                        ? new JsonResponse([], 204)                        : redirect($this->redirectPath());        }        $request->user()->sendEmailVerificationNotification();        return $request->wantsJson()                    ? new JsonResponse([], 202)                    : back()->with('resent', true);    }}
 |