Example #1
0
 public function renderFormElement()
 {
     $elm = new Zend_Form_Element_Checkbox($this->getName(), array('label' => $this->getLabel() . ':'));
     $elm->setDescription($this->getDescription());
     $elm->setValue($this->getValue());
     $elm->setRequired($this->getRequired());
     return $elm;
 }
Example #2
0
 /**
  * Faz o parse de um campo <boolean>
  * @param SimpleXMLElement $element
  */
 protected function parseBoolean($element)
 {
     $form_element = new Zend_Form_Element_Checkbox((string) $element->id);
     $form_element->setLabel((string) $element->label);
     $form_element->setDescription("Habilitar");
     if (isset($element->value) && $element->value == "true") {
         $form_element->setAttrib('checked', 'checked');
     } else {
         if (isset($element->default) && $element->default == "true") {
             $form_element->setAttrib('checked', 'checked');
         }
     }
     return $form_element;
 }
Example #3
0
 public function __construct($options = null)
 {
     parent::__construct($options);
     $translate = Zend_Registry::get('Zend_Translate');
     $this->removeDecorator('DtDdWrapper');
     $this->setName('register_form');
     $this->setAttrib('id', 'register_form');
     $this->addElementPrefixPath('Oibs_Decorators', 'Oibs/Decorators/', 'decorator');
     $this->addElementPrefixPath('Oibs_Validators', 'OIBS/Validators/', 'validate');
     $city = new Zend_Form_Element_Text('city');
     $city->setLabel($translate->_("account-register-city"))->setRequired(true)->addValidators(array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'field-empty'))), array('Regex', true, array('/^[\\p{L}0-9.\\- ]*$/'))))->setDecorators(array('RegistrationDecorator'));
     $mailvalid = new Zend_Validate_EmailAddress();
     $mailvalid->setMessage('email-invalid', Zend_Validate_EmailAddress::INVALID);
     $mailvalid->setMessage('email-invalid-hostname', Zend_Validate_EmailAddress::INVALID_HOSTNAME);
     $mailvalid->setMessage('email-invalid-mx-record', Zend_Validate_EmailAddress::INVALID_MX_RECORD);
     $mailvalid->setMessage('email-dot-atom', Zend_Validate_EmailAddress::DOT_ATOM);
     $mailvalid->setMessage('email-quoted-string', Zend_Validate_EmailAddress::QUOTED_STRING);
     $mailvalid->setMessage('email-invalid-local-part', Zend_Validate_EmailAddress::INVALID_LOCAL_PART);
     $mailvalid->setMessage('email-length-exceeded', Zend_Validate_EmailAddress::LENGTH_EXCEEDED);
     $mailvalid->hostnameValidator->setMessage('hostname-invalid-hostname', Zend_Validate_Hostname::INVALID_HOSTNAME);
     $mailvalid->hostnameValidator->setMessage('hostname-local-name-not-allowed', Zend_Validate_Hostname::LOCAL_NAME_NOT_ALLOWED);
     $mailvalid->hostnameValidator->setMessage('hostname-unknown-tld', Zend_Validate_Hostname::UNKNOWN_TLD);
     $mailvalid->hostnameValidator->setMessage('hostname-invalid-local-name', Zend_Validate_Hostname::INVALID_LOCAL_NAME);
     $mailvalid->hostnameValidator->setMessage('hostname-undecipherable-tld', Zend_Validate_Hostname::UNDECIPHERABLE_TLD);
     $email = new Zend_Form_Element_Text('email');
     $email->setLabel($translate->_("account-register-email"))->setRequired(true)->addFilter('StringtoLower')->addValidators(array($mailvalid))->addErrorMessage('email-invalid')->setDecorators(array('RegistrationDecorator'));
     $e_options = array("" => "account-select", "private_sector" => "account-register_private_sector", "public_sector" => "account-register_public_sector", "education_sector" => "account-register_education_sector", "student" => "account-register_student", "pentioner" => "account-register_pentioner", "other" => "account-register_other");
     $employment = new Zend_Form_Element_Select('employment');
     $employment->setLabel($translate->_("account-register-employment"))->setRequired(true)->addValidators(array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'field-empty')))))->addMultiOptions($e_options)->setDecorators(array('RegistrationDecorator'));
     $username = new Zend_Form_Element_Text('username');
     $username->setLabel($translate->_("account-register-username"))->setRequired(true)->addValidators(array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'field-empty'))), array('StringLength', false, array(4, 16, 'messages' => array('stringLengthTooShort' => 'field-too-short', 'stringLengthTooLong' => 'field-too-long'))), new Oibs_Validators_UsernameExists('username'), new Oibs_Validators_Username('username')))->setDecorators(array('RegistrationDecorator'));
     $password = new Zend_Form_Element_Password('password');
     $password->setLabel($translate->_("account-register-password"));
     $password->setRequired(true);
     $password->addValidators(array(new Oibs_Validators_RepeatValidator('confirm_password'), array('NotEmpty', true, array('messages' => array('isEmpty' => 'field-empty'))), array('StringLength', false, array(4, 16, 'messages' => array('stringLengthTooShort' => 'field-too-short', 'stringLengthTooLong' => 'field-too-long')))));
     $password->setDecorators(array('RegistrationDecorator'));
     $confirm_password = new Zend_Form_Element_Password('confirm_password');
     $confirm_password->setLabel($translate->_("account-register-password_confirm"));
     $confirm_password->setRequired(true);
     $confirm_password->addValidator('NotEmpty', true, array('messages' => array('isEmpty' => 'field-empty')));
     $confirm_password->addValidator('StringLength', false, array(4, 16, 'messages' => array('stringLengthTooShort' => 'field-too-short', 'stringLengthTooLong' => 'field-too-long')));
     $confirm_password->setDecorators(array('RegistrationDecorator'));
     $captcha = new Zend_Form_Element('captcha');
     $captcha->setDecorators(array('CaptchaDecorator'));
     $captcha_text = new Zend_Form_Element_Text('captcha_text');
     $captcha_text->setLabel($translate->_("account-register-enter_text"))->addValidators(array(new Oibs_Validators_CaptchaValidator(), array('NotEmpty', true, array('messages' => array('isEmpty' => 'field-empty')))))->setRequired(true)->setDecorators(array('RegistrationDecorator'));
     $text = sprintf($translate->_("account-register-terms_and_privacy"), "terms", "privacy");
     // this solution sucks. the codes are in the translate block directly.
     // anyone think of a fix to move codes out of there?
     // - Joel
     $terms = new Zend_Form_Element_Checkbox('terms');
     $terms->setDescription($text)->setLabel("account-register-terms")->setChecked(false)->setRequired(true)->addValidators(array(new Oibs_Validators_CheckboxValidator()))->setDecorators(array('RegistrationTermsDecorator'));
     // checkboxes always have a value of 1or0, this is a "feature" in ZF
     // custom validator is a workaround
     // -Joel
     $submit = new Zend_Form_Element_Submit('submit');
     $submit->setLabel($translate->_("account-register-submit"))->removeDecorator('DtDdWrapper')->setDecorators(array('ViewHelper', array('HtmlTag', array('tag' => 'div', 'class' => 'registration_submit_div'))))->setAttrib('class', 'registration_form_submit_' . $translate->getLocale());
     $this->addElements(array($username, $password, $confirm_password, $city, $email, $employment, $captcha, $captcha_text, $terms, $submit));
     /*$this->addDisplayGroup(array('username', 'password', 'confirm_password'), 'account_information');
       $this->account_information->setLegend('register-account-information');
       $this->account_information->removeDecorator('DtDdWrapper');
       $this->addDisplayGroup(array('city', 'email', 'employment'), 'personal_information');
       $this->personal_information->removeDecorator('DtDdWrapper');
       $this->personal_information->setLegend('register-personal-information');
       
       $this->addDisplayGroup(array('captcha', 'captcha_text', 'terms', 'submit'), 'confirmations');
       $this->confirmations->removeDecorator('DtDdWrapper');
       $this->confirmations->setLegend('register-confirmations');*/
 }
 public function init()
 {
     $this->setMethod('post');
     $this->setAttrib('id', 'registerInfo');
     $firstName = new Zend_Form_Element_Text('firstName');
     $firstName->setAttrib('autocomplete', 'off');
     $firstName->setAttrib('maxlength', '55');
     $firstName->setLabel('First Name' . '*');
     $firstName->addFilter('StripTags');
     $firstName->addFilter('HtmlEntities');
     $firstName->addFilter('StringTrim');
     $firstName->setRequired(true)->addErrorMessage('Required Field');
     $firstName->addValidator('Regex', true, array('/^[a-zA-Z0-9.-\\s]*$/'))->addErrorMessage('Invalid characters used');
     $firstName->addValidator('StringLength', true, array(1, 95))->addErrorMessage('Invalid Length');
     $lastName = new Zend_Form_Element_Text('lastName');
     $lastName->setAttrib('autocomplete', 'off');
     $lastName->setAttrib('maxlength', '55');
     $lastName->setLabel('Last Name' . '*');
     $lastName->addFilter('StripTags');
     $lastName->addFilter('HtmlEntities');
     $lastName->addFilter('StringTrim');
     $lastName->setRequired(true)->addErrorMessage('Required Field');
     $lastName->addValidator('Regex', true, array('/^[a-zA-Z0-9.,:-\\s]*$/'))->addErrorMessage('Invalid characters used');
     $telephone = new Zend_Form_Element_Text('telephone');
     $telephone->setAttrib('autocomplete', 'off');
     $telephone->setAttrib('maxlength', '15');
     $telephone->setLabel('Telephone' . '*');
     $telephone->addFilter('StripTags');
     $telephone->addFilter('HtmlEntities');
     $telephone->addFilter('StringTrim');
     $telephone->setRequired(true)->addErrorMessage('Required Field');
     $telephone->addValidator('Regex', true, array('/^[0-9.+\\s]*$/'))->addErrorMessage('Invalid characters used');
     $email = new Zend_Form_Element_Text('emailRegister');
     $email->setAttrib('autocomplete', 'off');
     $email->setLabel('Email' . '*');
     $email->addFilter('StripTags');
     $email->addFilter('HtmlEntities');
     $email->addFilter('StringTrim');
     $email->setRequired(true)->addErrorMessage('Required');
     $email->addValidator('EmailAddress')->addErrorMessage('Invalid Email used');
     $email->addValidator('StringLength', true, array(0, 255))->addErrorMessage('Required Field');
     $password = new Zend_Form_Element_Password('passwordRegister');
     $password->setAttrib('autocomplete', 'off');
     $password->setLabel('Password*');
     $password->addFilter('StripTags');
     $password->addFilter('HtmlEntities');
     $password->addFilter('StringTrim');
     $password->setRequired(true)->addErrorMessage('Password Required');
     $password->addValidator('StringLength', true, array(0, 255))->addErrorMessage('Required Field');
     $driverCheck = new Zend_Form_Element_Checkbox('driverCheck');
     $driverCheck->setDescription('Driver');
     $driverCheck->setUncheckedValue(0);
     $carModel = new Zend_Form_Element_Text('carModel');
     $carModel->setAttrib('autocomplete', 'off');
     $carModel->setAttrib('maxlength', '55');
     $carModel->setLabel('Car Model' . '*');
     $carModel->addFilter('StripTags');
     $carModel->addFilter('HtmlEntities');
     $carModel->addFilter('StringTrim');
     $carModel->addValidator('Regex', true, array('/^[a-zA-Z0-9.,:-\\s]*$/'))->addErrorMessage('Invalid characters used');
     $carMake = new Zend_Form_Element_Text('carMake');
     $carMake->setAttrib('autocomplete', 'off');
     $carMake->setAttrib('maxlength', '55');
     $carMake->setLabel('Car Make' . '*');
     $carMake->addFilter('StripTags');
     $carMake->addFilter('HtmlEntities');
     $carMake->addFilter('StringTrim');
     $carMake->addValidator('Regex', true, array('/^[a-zA-Z0-9.,:-\\s]*$/'))->addErrorMessage('Invalid characters used');
     $driverLicense = new Zend_Form_Element_Text('driverLicense');
     $driverLicense->setAttrib('autocomplete', 'off');
     $driverLicense->setAttrib('readonly', 'readonly');
     $driverLicense->setAttrib('maxlength', '10');
     $driverLicense->setLabel('Driver License Since' . '*');
     $driverLicense->addFilter('StripTags');
     $driverLicense->addFilter('HtmlEntities');
     $driverLicense->addFilter('StringTrim');
     $driverLicense->addValidator('Regex', true, array('/^[0-9.\\s]*$/'))->addErrorMessage('Invalid characters used');
     $this->addElements(array($firstName, $lastName, $telephone, $email, $password, $driverCheck, $carModel, $carMake, $driverLicense));
     $this->setElementDecorators(array('ViewHelper', 'Label', 'Errors'));
     $this->setDecorators(array('FormElements', 'Form', array('HtmlTag', array('tag' => 'div', 'id' => 'registerFormContainer'))));
     $driverCheck->setDecorators(array('ViewHelper', array('Description', array('placement' => Zend_Form_Decorator_Abstract::APPEND, 'tag' => 'em', 'class' => 'activeCheck')), array('HtmlTag', array('tag' => 'div', 'id' => 'driverCheckBox'))));
     $submit = new Zend_Form_Element_Submit('submit');
     $submit->setLabel('Register');
     $submit->setAttrib('class', 'btn btn-success pull-right');
     $submit->setAttrib('id', 'submitUser');
     $this->addElement($submit);
     $submit->setDecorators(array('ViewHelper'));
 }