ÿØÿà JFIF ÿá Exif MM * ÿÛ C
Server IP : 199.250.214.225 / Your IP : 3.144.45.188 Web Server : Apache System : Linux vps64074.inmotionhosting.com 3.10.0-1160.105.1.vz7.214.3 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : nicngo5 ( 1001) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /home/nicngo5/fund.old.nicn.gov.ng/funds-old/vendor/laravel/framework/src/Illuminate/Foundation/Auth/ |
Upload File : |
<?php namespace Illuminate\Foundation\Auth; use Illuminate\Support\Str; use Illuminate\Http\Request; use Illuminate\Mail\Message; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Password; trait ResetsPasswords { use RedirectsUsers; /** * Get the name of the guest middleware. * * @return string */ protected function guestMiddleware() { $guard = $this->getGuard(); return $guard ? 'guest:'.$guard : 'guest'; } /** * Display the form to request a password reset link. * * @return \Illuminate\Http\Response */ public function getEmail() { return $this->showLinkRequestForm(); } /** * Display the form to request a password reset link. * * @return \Illuminate\Http\Response */ public function showLinkRequestForm() { if (property_exists($this, 'linkRequestView')) { return view($this->linkRequestView); } if (view()->exists('auth.passwords.email')) { return view('auth.passwords.email'); } return view('auth.password'); } /** * Send a reset link to the given user. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function postEmail(Request $request) { return $this->sendResetLinkEmail($request); } /** * Send a reset link to the given user. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function sendResetLinkEmail(Request $request) { $this->validateSendResetLinkEmail($request); $broker = $this->getBroker(); $response = Password::broker($broker)->sendResetLink( $this->getSendResetLinkEmailCredentials($request), $this->resetEmailBuilder() ); switch ($response) { case Password::RESET_LINK_SENT: return $this->getSendResetLinkEmailSuccessResponse($response); case Password::INVALID_USER: default: return $this->getSendResetLinkEmailFailureResponse($response); } } /** * Validate the request of sending reset link. * * @param \Illuminate\Http\Request $request * @return void */ protected function validateSendResetLinkEmail(Request $request) { $this->validate($request, ['email' => 'required|email']); } /** * Get the needed credentials for sending the reset link. * * @param \Illuminate\Http\Request $request * @return array */ protected function getSendResetLinkEmailCredentials(Request $request) { return $request->only('email'); } /** * Get the Closure which is used to build the password reset email message. * * @return \Closure */ protected function resetEmailBuilder() { return function (Message $message) { $message->subject($this->getEmailSubject()); }; } /** * Get the e-mail subject line to be used for the reset link email. * * @return string */ protected function getEmailSubject() { return property_exists($this, 'subject') ? $this->subject : 'Your Password Reset Link'; } /** * Get the response for after the reset link has been successfully sent. * * @param string $response * @return \Symfony\Component\HttpFoundation\Response */ protected function getSendResetLinkEmailSuccessResponse($response) { return redirect()->back()->with('status', trans($response)); } /** * Get the response for after the reset link could not be sent. * * @param string $response * @return \Symfony\Component\HttpFoundation\Response */ protected function getSendResetLinkEmailFailureResponse($response) { return redirect()->back()->withErrors(['email' => trans($response)]); } /** * Display the password reset view for the given token. * * If no token is present, display the link request form. * * @param \Illuminate\Http\Request $request * @param string|null $token * @return \Illuminate\Http\Response */ public function getReset(Request $request, $token = null) { return $this->showResetForm($request, $token); } /** * Display the password reset view for the given token. * * If no token is present, display the link request form. * * @param \Illuminate\Http\Request $request * @param string|null $token * @return \Illuminate\Http\Response */ public function showResetForm(Request $request, $token = null) { if (is_null($token)) { return $this->getEmail(); } $email = $request->input('email'); if (property_exists($this, 'resetView')) { return view($this->resetView)->with(compact('token', 'email')); } if (view()->exists('auth.passwords.reset')) { return view('auth.passwords.reset')->with(compact('token', 'email')); } return view('auth.reset')->with(compact('token', 'email')); } /** * Reset the given user's password. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function postReset(Request $request) { return $this->reset($request); } /** * Reset the given user's password. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function reset(Request $request) { $this->validate( $request, $this->getResetValidationRules(), $this->getResetValidationMessages(), $this->getResetValidationCustomAttributes() ); $credentials = $this->getResetCredentials($request); $broker = $this->getBroker(); $response = Password::broker($broker)->reset($credentials, function ($user, $password) { $this->resetPassword($user, $password); }); switch ($response) { case Password::PASSWORD_RESET: return $this->getResetSuccessResponse($response); default: return $this->getResetFailureResponse($request, $response); } } /** * Get the password reset validation rules. * * @return array */ protected function getResetValidationRules() { return [ 'token' => 'required', 'email' => 'required|email', 'password' => 'required|confirmed|min:6', ]; } /** * Get the password reset validation messages. * * @return array */ protected function getResetValidationMessages() { return []; } /** * Get the password reset validation custom attributes. * * @return array */ protected function getResetValidationCustomAttributes() { return []; } /** * Get the password reset credentials from the request. * * @param \Illuminate\Http\Request $request * @return array */ protected function getResetCredentials(Request $request) { return $request->only( 'email', 'password', 'password_confirmation', 'token' ); } /** * Reset the given user's password. * * @param \Illuminate\Contracts\Auth\CanResetPassword $user * @param string $password * @return void */ protected function resetPassword($user, $password) { $user->forceFill([ 'password' => bcrypt($password), 'remember_token' => Str::random(60), ])->save(); Auth::guard($this->getGuard())->login($user); } /** * Get the response for after a successful password reset. * * @param string $response * @return \Symfony\Component\HttpFoundation\Response */ protected function getResetSuccessResponse($response) { return redirect($this->redirectPath())->with('status', trans($response)); } /** * Get the response for after a failing password reset. * * @param Request $request * @param string $response * @return \Symfony\Component\HttpFoundation\Response */ protected function getResetFailureResponse(Request $request, $response) { return redirect()->back() ->withInput($request->only('email')) ->withErrors(['email' => trans($response)]); } /** * Get the broker to be used during password reset. * * @return string|null */ public function getBroker() { return property_exists($this, 'broker') ? $this->broker : null; } /** * Get the guard to be used during password reset. * * @return string|null */ protected function getGuard() { return property_exists($this, 'guard') ? $this->guard : null; } }