public function forgotPasswordAction() { $error = false; $message = ""; $old_pass = ""; if (isset($this->_params['email'])) { $u = $this->getUsers()->getByEmail($this->_params['email']); if (is_null($u)) { $u = $this->getCenters()->getByEmail($this->_params['email']); if (is_null($u)) { $error = true; $message = "Email dosen't exist !"; $this->view->assign("errorMessage", $message); } } if (!is_null($u)) { $new_pass = NL_Utils::randomPassword(); $md5_new_pass = Table_Abstract::encryptPassword($new_pass); $email = new NL_HtmlMailer(); if (!$email->sendForgot($new_pass, $this->_params['email'])) { $error = true; $message = "Service not available, please contact us to fix this !"; $this->view->assign("errorMessage", $message); } else { $u->setPassword($md5_new_pass); $u->setFirstTime(0); if ($u->save()) { $this->view->assign("successMessage", 'Please check your email to log in with your new password, please remember to change it after you loggedin'); } else { $this->view->assign("errorMessage", $message); } } } } }