Example #1
0
 /**
  * @param User Uzivatel k editaci
  * @return Form 
  */
 public function create($user = NULL)
 {
     $form = $this->baseFormFactory->create();
     /* UZIVATELSKA CAST */
     $userF = $form->addContainer('user');
     $userF->addText('login', 'system.credentialsName')->setRequired($form->getTranslator()->translate('system.requiredItem', ['label' => '%label']));
     $userF->addPassword('password', 'system.credentialsPassword');
     $userF->addPassword('password2', 'system.credentialsPassword')->addConditionOn($form['user']['password'], Form::FILLED)->setRequired(new Phrase('system.requiredItem', ['label' => '%label']))->addRule(Form::EQUAL, new Phrase('system.equalItem', ['label' => '%label']), $form['user']['password']);
     $userF->addSelect('role', 'system.userRole')->setItems(User::getRoleList());
     /* OSOBNI CAST */
     $personF = $form->addContainer('person');
     $personF->addText('name', 'system.userName')->setRequired(new Phrase('system.requiredItem', ['label' => '%label']));
     $personF->addText('surname', 'system.userSurname');
     $personF->addUpload('avatar', 'system.userAvatar')->addCondition(Form::FILLED)->addRule(Form::IMAGE, $form->getTranslator()->translate('system.formImage', ['item' => '%label']));
     /* OBECNA CAST */
     $form->addSubmit('send', 'system.save');
     //id, vychozi hodnoty pri editaci
     $form->addHidden('id');
     if ($user !== NULL) {
         $defaults = $this->getDefaults($user);
         $form->setDefaults($defaults);
     }
     $form->onValidate[] = [$this, 'validateForm'];
     $form->onSuccess[] = [$this, 'formSucceeded'];
     return $form;
 }