예제 #1
0
 protected function createLoginFromData(\stdClass $loginData)
 {
     $login = new Login();
     $login->setID($loginData->ID);
     $login->setActive($loginData->active == 1);
     $login->setConfirmed($loginData->confirmed !== null ? new \DateTime($loginData->confirmed) : null);
     $login->setEmail($loginData->email);
     $login->setLastLogin($loginData->lastlogin !== null ? new \DateTime($loginData->lastlogin) : null);
     $login->setRegistered($loginData->registered !== null ? new \DateTime($loginData->registered) : null);
     $login->setToken($loginData->token);
     $login->setTokenTime($loginData->tokentime);
     $login->setUsername($loginData->username);
     $login->setWrongLogins($loginData->wronglogins);
     $login->setSalt($loginData->salt);
     $login->setPassword($loginData->password);
     return $login;
 }
 protected function prepareEditAccountForm(Login $userData)
 {
     if ($this->form instanceof Form) {
         return;
     }
     $rightGroups = array();
     foreach ($this->rightGroupModel->getRightGroups() as $rg) {
         $rightGroups[$rg->getID()] = $rg->getGroupName();
     }
     $this->form = new CmsForm();
     $this->form->setInputData(array_merge($_POST, $_GET));
     $fldName = new InputField('name', 'Name');
     $fldName->setValue($userData->getUsername());
     $fldName->addRule(new RequiredRule($this->translator->_d('backend', 'Please insert a username')));
     $this->form->addField($fldName);
     $fldEmail = new InputField('email', 'E-Mail');
     $fldEmail->setValue($userData->getEmail());
     $fldEmail->setInputFieldRenderer(new EmailInputFieldRenderer());
     $fldEmail->addRule(new RequiredRule($this->translator->_d('backend', 'Please insert an e-mail address')));
     $fldEmail->addRule(new ValidEmailAddressRule($this->translator->_d('backend', 'Please insert a valid e-mail address')));
     $this->form->addField($fldEmail);
     $fldActive = new OptionsField('active', 'Active', array(1 => $this->translator->_d('backend', 'This account is active')));
     $fldActive->setValue($userData->getActive());
     $fldActive->setOptionsFieldRenderer(new CheckboxOptionsFieldRenderer());
     $this->form->addField($fldActive);
     $this->form->addFields(array($fldName, $fldEmail, $fldActive));
 }