'required|valid_email', 'password' => 'required', 'new_password' => 'required|strong_password', 'new_pass_confirm' => 'required|matches[new_password]', ]; if (!$this->validate($rules)) { return redirect() ->back() ->withInput() ->with('errors', $userModel->errors()); } $credentials = [ 'email' => user()->email, 'password' => $this->request->getPost('password'), ]; if (!$auth->validate($credentials)) { return redirect() ->back() ->withInput() ->with('errors', $userModel->errors()); } user()->password = $this->request->getPost('new_password'); $userModel->save(user()); if (!$userModel->save(user())) { return redirect() ->back() ->withInput() ->with('errors', $userModel->errors()); } // Success! return redirect() ->route('myAccount') ->with('message', lang('MyAccount.messages.passwordChangeSuccess')); } }