Example #1
0
 public function confirm()
 {
     $result = App::getModel('forgotpassword')->validateLink($this->getParam());
     if ($result > 0) {
         $form = new SimpleForm\Form(array('name' => 'forgotpassword', 'action' => '', 'method' => 'post'));
         $newPassword = $form->AddChild(new SimpleForm\Elements\Password(array('name' => 'newpassword', 'label' => _('TXT_PASSWORD_NEW'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_PASSWORD')), new SimpleForm\Rules\MinLength(_('ERR_PASSWORD_NEW_INVALID'), 6)))));
         $form->AddChild(new SimpleForm\Elements\Password(array('name' => 'confirmpassword', 'label' => _('TXT_PASSWORD_REPEAT'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_CONFIRM_PASSWORD')), new SimpleForm\Rules\Compare(_('ERR_PASSWORDS_NOT_COMPATIBILE'), $newPassword)))));
         if ($form->Validate()) {
             $formData = $form->getSubmitValues();
             App::getModel('forgotpassword')->forgotPassword($result, $formData['newpassword']);
             Session::setActiveClientid($result);
             App::getModel('clientlogin')->checkClientGroup();
             App::getModel('client')->saveClientData();
             Session::setVolatilePasswordChanged(1, false);
             App::redirectUrl($this->registry->router->generate('frontend.clientsettings', true));
         }
         $this->registry->template->assign('form', $form->getForm());
         return $this->registry->template->fetch($this->loadTemplate('index.tpl'));
     } else {
         return $this->registry->template->fetch($this->loadTemplate('error.tpl'));
     }
 }