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')); } }