function doForgotPassword()
 {
     if (!$this->request->hasPost()) {
         return;
     }
     if (!($user = lmbActiveRecord::findFirst('lmbCmsUser', array('email = ?', $this->request->get('email'))))) {
         return $this->flashError("Пользователь с таким значением email не найден", array('Field' => 'email'));
     }
     $this->useForm('password_form');
     if (!$this->error_list->isEmpty()) {
         return;
     }
     $password = $user->generatePassword();
     $user->setNewPassword($password);
     $user->setGeneratedPassword($user->getCryptedPassword($password));
     $user->saveSkipValidation();
     $template = new lmbMacroView('cms_user/forgot_password_email.txt');
     $template->set('user', $user);
     $template->set('approve_password_url', 'http://' . $_SERVER['HTTP_HOST'] . '/cms_user/approve/' . $user->getGeneratedPassword());
     $email_body = $template->render();
     $mailer = new lmbMailer();
     $mailer->sendPlainMail($user->getEmail(), lmb_env_get('ADMIN_EMAIL', "*****@*****.**"), "Password recovery", $email_body);
     $this->flashAndRedirect("Новый пароль выслан на ваш email", '/cms_user/login');
 }