Esempio n. 1
0
 /**
  * Инициализация формы, установка элементов
  *
  * @see Zend_Form::init()
  * @return void
  */
 public function init()
 {
     $this->setAction($this->getView()->url(array('controller' => 'applicant', 'action' => 'edit')));
     $this->setMethod('post');
     $this->setAttrib('enctype', 'multipart/form-data');
     $LastName = $this->createElement('text', 'LastName');
     $LastName->setLabel('[LS_FORM_EDIT_LASTNAME_LABEL]');
     $LastName->setRequired(true);
     $LastName->addValidator('Alpha', true);
     $LastName->addValidator('StringLength', true, array(2, 25));
     $LastName->addFilters(array('StringTrim', 'HtmlEntities'));
     $this->addElement($LastName);
     $Name = $this->createElement('text', 'Name');
     $Name->setLabel('[LS_FORM_EDIT_NAME_LABEL]');
     $Name->setRequired(true);
     $Name->addValidator('Alpha', true);
     $Name->addValidator('StringLength', true, array(2, 25));
     $Name->addFilters(array('StringTrim', 'HtmlEntities'));
     $this->addElement($Name);
     $Patronymic = $this->createElement('text', 'Patronymic');
     $Patronymic->setLabel('[LS_FORM_EDIT_PATRONYMIC_LABEL]');
     $Patronymic->setRequired(true);
     $Patronymic->addValidator('Alpha', true);
     $Patronymic->addValidator('StringLength', true, array(2, 25));
     $Patronymic->addFilters(array('StringTrim', 'HtmlEntities'));
     $this->addElement($Patronymic);
     $Birth = new Zend_Dojo_Form_Element_DateTextBox('Birth', array('required' => true, 'label' => '[LS_FORM_EDIT_BIRTH_LABEL]'));
     $Birth->setDatePattern('dd.MM.yyyy');
     $Birth->addValidator('Date');
     $this->addElement($Birth);
     $vacancySelect = $this->createElement('select', 'VacancyId');
     $vacancySelect->setLabel('[LS_FORM_EDIT_VACANCY_LABEL]');
     $this->addElement($vacancySelect);
     $Email = $this->createElement('text', 'Email');
     $Email->setLabel('[LS_FORM_EDIT_EMAIL_LABEL]');
     $Email->setRequired(true);
     $Email->addValidator('StringLength', true, array(3, 100));
     $Email->addValidator('EmailAddress', true);
     $Email->addFilters(array('StringTrim', 'HtmlEntities'));
     $this->addElement($Email);
     $Phone = $this->createElement('text', 'Phone');
     $Phone->setLabel('[LS_FORM_EDIT_PHONE_LABEL]');
     $Phone->setRequired(true);
     $Phone->addValidator('StringLength', true, 10);
     $Phone->addFilters(array('StringTrim', 'HtmlEntities'));
     $this->addElement($Phone);
     $Resume = $this->createElement('textarea', 'Resume');
     $Resume->setLabel('[LS_FORM_EDIT_RESUME_LABEL]');
     $Resume->setRequired(true);
     $Resume->setAttrib('cols', '50');
     $Resume->setAttrib('rows', '5');
     $Resume->addValidator('StringLength', true, array(1, 10000));
     $Resume->addFilters(array('StringTrim', 'HtmlEntities'));
     $this->addElement($Resume);
     $Photo = $this->createElement('file', 'Photo');
     $Photo->setLabel('[LS_FORM_EDIT_PHOTO_LABEL]');
     $Photo->setMaxFileSize(1024000);
     $Photo->addValidator('Count', false, 1);
     $Photo->addValidator('Size', false, 1024000);
     $Photo->addValidator('Extension', false, 'jpg,png,gif');
     $Photo->setDestination(UPLOAD_PATH);
     $this->addElement($Photo);
     $applicantId = $this->createElement('hidden', 'applicantId');
     $this->addElement($applicantId);
     $submit = $this->createElement('submit', 'save', array('label' => '[LS_FORM_SUBMMIT_SAVE]'));
     $this->addElement($submit);
 }