function perform() { $this->_userNameHash = $this->_request->getValue("b"); $this->_requestHash = $this->_request->getValue("a"); $this->_newPassword = $this->_request->getValue("newPassword"); $this->_retypeNewPassword = $this->_request->getValue("retypePassword"); $this->_userId = $this->_request->getValue("userId"); // check if the passwords are correct and are the same if ($this->_newPassword != $this->_retypeNewPassword) { $this->_view = new SummaryView("changepassword"); $this->_view->setErrorMessage($this->_locale->tr("error_passwords_do_not_match")); $this->setCommonData(true); return false; } $userInfo = SummaryTools::verifyRequest($this->_userNameHash, $this->_requestHash); if (!$userInfo) { $this->_view = new SummaryView("summaryerror"); $this->_view->setErrorMessage($this->_locale->tr("error_incorrect_request")); $this->setCommonData(true); return false; } // so if everything went fine, we can *FINALLY* change the password! $users = new Users(); $userInfo->setPassword($this->_newPassword); $users->updateUser($userInfo); $this->_view = new SummaryView("message"); $this->_view->setSuccessMessage($this->_locale->tr("password_updated_ok")); return true; }
function perform() { // make sure that the request is correct $userInfo = SummaryTools::verifyRequest($this->_userNameHash, $this->_requestHash); if (!$userInfo) { $this->_view = new SummaryView("summaryerror"); $this->_view->setErrorMessage($this->_locale->tr("error_incorrect_request")); return false; } // so if everything went fine, we can now show a form to allow the user to finally // set a new password... $this->_view = new SummaryView("changepassword"); $this->_view->setValue("a", $this->_requestHash); $this->_view->setValue("b", $this->_userNameHash); $this->_view->setValue("userId", $userInfo->getId()); $this->setCommonData(); return true; }