/**
  * Reset the given user's password.
  *
  * @param  Request  $request
  * @return Response
  */
 public function postChange(Request $request)
 {
     $validator = Validator::make($request->all(), ['token' => 'required', 'old_passwd' => 'required', 'password' => 'required|confirmed'], [], ['old_passwd' => '原密码', 'password' => '新密码']);
     if ($validator->fails()) {
         return Redirect::back()->withInput()->withErrors($validator);
     }
     $auth_array = array('email' => Auth::user()->email, 'password' => Input::get('old_passwd'));
     if (Auth::validate($auth_array)) {
     } else {
         return redirect()->back()->withErrors("请输入正确的密码!");
     }
     $credentials = array('email' => Auth::user()->email, 'password' => Input::get('password'), 'password_confirmation' => Input::get('password_confirmation'), 'token' => Input::get('token'));
     $response = $this->passwords->reset($credentials, function ($user, $password) {
         $user->password = bcrypt($password);
         $user->save();
         $this->auth->login($user);
     });
     switch ($response) {
         case PasswordBroker::PASSWORD_RESET:
             $array = array('email' => Auth::user()->email);
             $token = $this->passwords->getToken($array);
             UserManageLog::insertLog("修改密码", Auth::user()->id, Auth::user()->name, Auth::user()->email, Auth::user()->name . '(' . Auth::user()->email . ')', null, null, $request->ip());
             return view('auth.change_password')->withTips("密码修改成功!")->withToken($token);
         default:
             return redirect()->back()->withErrors(['email' => trans($response)]);
     }
 }
Ejemplo n.º 2
0
 /**
  * Process a password reset request. This is the last step in the reset process
  *
  * @param $credentials
  * @return mixed|string
  */
 public function resetPassword($credentials)
 {
     $status = $this->passwordBroker->reset($credentials, function ($user, $password) {
         $user->password = app('hash')->make($password);
         if ($user->save()) {
             // auto login the user
             auth()->login($user);
         }
     });
     return $status;
 }
Ejemplo n.º 3
0
 public function postReset()
 {
     $credentials = $this->request->only('email', 'password', 'password_confirmation', 'token');
     $response = $this->password->reset($credentials, function ($user, $password) {
         $user->password = $this->hasher->make($password);
         $user->save();
     });
     switch ($response) {
         case $this->password->INVALID_PASSWORD:
         case $this->password->INVALID_TOKEN:
         case $this->password->INVALID_USER:
             return $this->redirector->back()->with('error', $this->translator->get($response));
         case $this->password->PASSWORD_RESET:
             return $this->redirector->to('/');
     }
 }
Ejemplo n.º 4
0
 /**
  * Reset a users password
  * @param  AuthRequestInterface $request
  * @param  PasswordBroker       $passwords
  * @return Illuminate\Http\Response
  */
 public function postReset(AuthRequestInterface $request, PasswordBroker $passwords)
 {
     $credentials = $request->only('email', 'password', 'password_confirmation', 'token');
     $response = $passwords->reset($credentials, function ($user, $password) {
         $this->resetPassword($user, $password);
     });
     switch ($response) {
         case PasswordBroker::PASSWORD_RESET:
             return $this->passwordWasReset($request);
             break;
         default:
             return $this->passwordWasNotReset($request, $response);
             break;
     }
 }
Ejemplo n.º 5
0
 /**
  * Reset the password for the given token.
  *
  * @param array $credentials
  * @param \Closure $callback
  * @return mixed 
  * @static 
  */
 public static function reset($credentials, $callback)
 {
     return \Illuminate\Auth\Passwords\PasswordBroker::reset($credentials, $callback);
 }