public function forgotpassAction() { $oForm = new Form_ForgotPass('/login/forgotpass/'); $bSubmitted = false; if ($this->_request->isPost()) { if ($oForm->isValid($this->_request->getPost())) { $oUser = new Users(); $oPersonalData = $oUser->getPersonalDataFromEmail($this->_request->getPost('email_add')); $oAccountData = $oUser->getAccountDataFromUserId($oPersonalData->id); //generate random password $sNewPassword = substr(md5(rand()), 0, 7); $oUser->updatePasswordData($oAccountData->id, $sNewPassword); //send email for reset $oEmail = new Emails(); $oEmail->mailReset($oPersonalData['email_add'], $oAccountData['username'], $sNewPassword); $bSubmitted = true; } else { $auth = Zend_Auth::getInstance(); $auth->clearIdentity(); $oForm->populate($this->_request->getPost()); } } if (!$bSubmitted) { $this->view->form = $oForm; } else { $this->view->form = "<h1>You have successfully resetted your password. Please check your email.</h1>"; } }