관리-도구
편집 파일: ResetPasswordController.php
<?php namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; use Illuminate\Http\Request; use Illuminate\Support\Facades\Password; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Validator; use Illuminate\Auth\Events\PasswordReset; class ResetPasswordController extends Controller { /** * Show the form for resetting the password. * * @param string $token * @return \Illuminate\View\View */ public function showResetForm($token) { return view('auth.passwords.reset')->with(['token' => $token]); } /** * Reset the user's password. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function reset(Request $request) { $validator = Validator::make($request->all(), [ 'email' => 'required|email', 'password' => 'required|confirmed', 'token' => 'required', ]); if ($validator->fails()) { return back()->withErrors($validator)->withInput(); } $response = Password::broker()->reset( $request->only('email', 'password', 'password_confirmation', 'token'), function ($user, $password) { $user->password = Hash::make($password); $user->save(); event(new PasswordReset($user)); } ); return $response === Password::PASSWORD_RESET ? redirect()->route('login')->with('status', __($response)) : back()->withErrors(['email' => __($response)]); } }