public function init()
 {
     /* Form Elements & Other Definitions Here ... */
     // TODO setMethod
     $element = new Zend_Form_Element_Text('prenom');
     $element->setLabel('Prénom')->setRequired();
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Le prénom est obligatoire', Zend_Validate_NotEmpty::IS_EMPTY);
     $element->addValidator($validator);
     $validator = new Zend_Validate_StringLength();
     $validator->setMax(40);
     $element->addValidator($validator);
     $filter = new Zend_Filter_StringTrim();
     $element->addFilter($filter);
     $this->addElement($element);
     $element = new Zend_Form_Element_Text('nom');
     $element->setLabel('Nom')->setRequired();
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Le nom est obligatoire', Zend_Validate_NotEmpty::IS_EMPTY);
     $element->addValidator($validator);
     $this->addElement($element);
     $element = new Zend_Form_Element_Text('email');
     $element->setLabel('Email');
     $this->addElement($element);
     $element = new Zend_Form_Element_Text('telephone');
     $element->setLabel('Téléphone');
     $this->addElement($element);
 }
예제 #2
0
 /**
  * @group ZF-11267
  * If we pass in a validator instance that has a preset custom message, this
  * message should be used.
  */
 function testIfCustomMessagesOnValidatorInstancesCanBeUsed()
 {
     // test with a Digits validator
     require_once 'Zend/Validate/Digits.php';
     require_once 'Zend/Validate/NotEmpty.php';
     $data = array('field1' => 'invalid data');
     $customMessage = 'Hey, that\'s not a Digit!!!';
     $validator = new Zend_Validate_Digits();
     $validator->setMessage($customMessage, 'notDigits');
     $this->assertFalse($validator->isValid('foo'), 'standalone validator thinks \'foo\' is a valid digit');
     $messages = $validator->getMessages();
     $this->assertSame($messages['notDigits'], $customMessage, 'stanalone validator does not have custom message');
     $validators = array('field1' => $validator);
     $input = new Zend_Filter_Input(null, $validators, $data);
     $this->assertFalse($input->isValid(), 'invalid input is valid');
     $messages = $input->getMessages();
     $this->assertSame($messages['field1']['notDigits'], $customMessage, 'The custom message is not used');
     // test with a NotEmpty validator
     $data = array('field1' => '');
     $customMessage = 'You should really supply a value...';
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage($customMessage, 'isEmpty');
     $this->assertFalse($validator->isValid(''), 'standalone validator thinks \'\' is not empty');
     $messages = $validator->getMessages();
     $this->assertSame($messages['isEmpty'], $customMessage, 'stanalone NotEmpty validator does not have custom message');
     $validators = array('field1' => $validator);
     $input = new Zend_Filter_Input(null, $validators, $data);
     $this->assertFalse($input->isValid(), 'invalid input is valid');
     $messages = $input->getMessages();
     $this->assertSame($messages['field1']['isEmpty'], $customMessage, 'For the NotEmpty validator the custom message is not used');
 }
예제 #3
0
 public function init()
 {
     /* Form Elements & Other Definitions Here ... */
     $element = new Zend_Form_Element_Text('login');
     $element->setLabel('Login')->setRequired();
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Le login est obligatoire', Zend_Validate_NotEmpty::IS_EMPTY);
     $element->addValidator($validator);
     $validator = new Zend_Validate_StringLength();
     $validator->setMax(40);
     $element->addValidator($validator);
     $filter = new Zend_Filter_StringTrim();
     $element->addFilter($filter);
     $this->addElement($element);
     $element = new Zend_Form_Element_Password('password');
     $element->setLabel('Mot de passe')->setRequired();
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Le mot de passe est obligatoire', Zend_Validate_NotEmpty::IS_EMPTY);
     $element->addValidator($validator);
     $validator = new Zend_Validate_StringLength();
     $validator->setMax(40);
     $element->addValidator($validator);
     $filter = new Zend_Filter_StringTrim();
     $element->addFilter($filter);
     $this->addElement($element);
 }
예제 #4
0
 public function __construct($options = null)
 {
     $baseDir = $options['baseDir'];
     $pageID = $options['pageID'];
     parent::__construct($options);
     /****************************************/
     // PARAMETERS
     /****************************************/
     // select box category (Parameter #1)
     $blockCategory = new Zend_Form_Element_Select('Param1');
     $blockCategory->setLabel('Catégorie d\'évènement de ce bloc')->setAttrib('class', 'largeSelect');
     $categories = new Categories();
     $select = $categories->select()->setIntegrityCheck(false)->from('Categories')->join('CategoriesIndex', 'C_ID = CI_CategoryID')->where('C_ModuleID = ?', 7)->where('CI_LanguageID = ?', Zend_Registry::get("languageID"))->order('CI_Title');
     $categoriesArray = $categories->fetchAll($select);
     foreach ($categoriesArray as $category) {
         $blockCategory->addMultiOption($category['C_ID'], $category['CI_Title']);
     }
     // number of news to show in front-end (Parameter #2)
     $at_least_one = new Zend_Validate_GreaterThan('0');
     $at_least_one->setMessage('Vous devez afficher au moins un événement.');
     $not_null = new Zend_Validate_NotEmpty();
     $not_null->setMessage($this->getView()->getCibleText('validation_message_empty_field'));
     $blockNewsMax = new Zend_Form_Element_Text('Param2');
     $blockNewsMax->setLabel('Nombre d\'évènement à afficher')->setRequired(true)->setValue('1')->addValidator($not_null, true)->addValidator($at_least_one, true)->setAttrib('class', 'smallTextInput');
     // show the breif text in front-end (Parameter #3)
     $blockShowBrief = new Zend_Form_Element_Checkbox('Param3');
     $blockShowBrief->setLabel('Afficher le texte bref');
     $blockShowBrief->setDecorators(array('ViewHelper', array('label', array('placement' => 'append')), array(array('row' => 'HtmlTag'), array('tag' => 'dd', 'class' => 'label_after_checkbox'))));
     $this->addElements(array($blockCategory, $blockNewsMax, $blockShowBrief));
     $this->removeDisplayGroup('parameters');
     $this->addDisplayGroup(array('Param999', 'Param1', 'Param2', 'Param3'), 'parameters');
     $parameters = $this->getDisplayGroup('parameters');
     //$parameters->setLegend($this->_view->getCibleText('form_parameters_fieldset'));
 }
예제 #5
0
 public function init()
 {
     $this->setMethod('post');
     //The password element.
     $passwordElement = new Zend_Form_Element_Password('password');
     $passwordElement->setRequired(true);
     $passwordElement->setLabel('New Password:'******'confirm_password');
     $validator->setMessage('Passwords are not the same', Zend_Validate_Identical::NOT_SAME);
     $passwordElement->addValidator($validator);
     $this->addElement($passwordElement);
     //The confirm password element.
     $confirmPasswordElement = new Zend_Form_Element_Password('confirm_password');
     $confirmPasswordElement->setRequired(true);
     $confirmPasswordElement->setLabel('Confirm New Password:'******'Please confirm your password');
     $confirmPasswordElement->addValidator($validator);
     $this->addElement($confirmPasswordElement);
     // Security question & answer
     $this->addElement('select', 'security_question', array('label' => 'Security Question', 'required' => true, 'multiOptions' => array(0 => 'Please select'), 'decorators' => array(array('ViewHelper', array('escape' => false)), array('Label', array('escape' => false)))));
     $this->addElement('text', 'security_answer', array('label' => 'Answer', 'required' => true, 'filters' => array('StringTrim'), 'attribs' => array('data-ctfilter' => 'yes')));
     $this->addElement('hidden', 'instruction', array('required' => false));
     $this->addElement('submit', 'submit', array('ignore' => true, 'label' => 'Save', 'class' => 'button'));
     $this->setElementDecorators(array('ViewHelper', 'Label', 'Errors', array('HtmlTag', array('tag' => 'div'))));
     // Set up the decorator on the form and add in decorators which are removed
     $this->addDecorator('FormElements')->addDecorator('HtmlTag', array('tag' => 'div', 'class' => 'form_section one-col'))->addDecorator('Form');
     $element = $this->getElement('submit');
     $element->removeDecorator('label');
     // Remove the label from the submit button
 }
예제 #6
0
	public function formValidator($form)
	{
		$emptyValidator = new Zend_Validate_NotEmpty();
		$emptyValidator->setMessage(General_Models_Text::$text_notEmpty);
		$form->getElement('username')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('password')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		return $form;
	}
예제 #7
0
 public function init()
 {
     // Set request method
     $this->setMethod('post');
     // Email entry
     $this->addElement('span', 'email', array('label' => 'Email address', 'required' => false, 'filters' => array('StringTrim'), 'class' => 'formvalue', 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter your email address'))))));
     // Modify email error messages & add validator
     $emailValidator = new Zend_Validate_EmailAddress();
     $emailValidator->setMessages(array(Zend_Validate_EmailAddress::INVALID_HOSTNAME => "Domain name invalid in email address", Zend_Validate_EmailAddress::INVALID_FORMAT => "Invalid email address"));
     $this->getElement('email')->addValidator($emailValidator);
     //The password element.
     $passwordElement = new Zend_Form_Element_Password('password');
     $passwordElement->setRequired(true);
     $passwordElement->setLabel('Create your password');
     $passwordElement->setOptions(array('data-noAjaxValidate' => '1'));
     $passwordElement->addValidator(new Zend_Validate_PasswordStrength());
     $validator = new Zend_Validate_Identical();
     $validator->setToken('confirm_password');
     $validator->setMessage('Passwords are not the same', Zend_Validate_Identical::NOT_SAME);
     $passwordElement->addValidator($validator);
     $this->addElement($passwordElement);
     //The confirm password element.
     $confirmPasswordElement = new Zend_Form_Element_Password('confirm_password');
     $confirmPasswordElement->setRequired(true);
     $confirmPasswordElement->setLabel('Re-enter password');
     $confirmPasswordElement->setOptions(array('data-noAjaxValidate' => '1'));
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Please confirm your password');
     $confirmPasswordElement->addValidator($validator);
     $this->addElement($confirmPasswordElement);
     // Security question & answer
     $securityQuestionModel = new Datasource_Core_SecurityQuestion();
     $securityQuestionOptions = array(0 => '- Please Select -');
     foreach ($securityQuestionModel->getOptions() as $option) {
         $securityQuestionOptions[$option['id']] = $option['question'];
     }
     $this->addElement('select', 'security_question', array('label' => 'Security Question', 'required' => false, 'multiOptions' => $securityQuestionOptions, 'decorators' => array(array('ViewHelper', array('escape' => false)), array('Label', array('escape' => false)))));
     /* Value no longer mandatory, Redmine #11873
             $questionElement = $this->getElement('security_question');
             $validator = new Zend_Validate_GreaterThan(array('min'=> 0));
             $validator->setMessage('You must select a security question');
             $questionElement->addValidator($validator);
     */
     $this->addElement('text', 'security_answer', array('label' => 'Answer', 'required' => false, 'filters' => array('StringTrim')));
     // Set custom subform decorator - this is the default and gets overridden by view scripts in the tenants' and landlords' Q&Bs
     $this->setDecorators(array(array('ViewScript', array('viewScript' => 'subforms/register.phtml'))));
     // Set element decorators
     $this->setElementDecorators(array(array('ViewHelper', array('escape' => false)), array('Label', array('escape' => false))));
     // Grab view and add the client-side password validation JavaScript into the page head
     $view = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view');
     $view->headScript()->appendFile('/assets/common/js/passwordValidation.js', 'text/javascript');
 }
예제 #8
0
 /**
  * Initialise the form
  * 
  * @todo Validation
  * @return void 
  */
 public function init()
 {
     // Set request method
     $this->setMethod('POST');
     // Add title element
     $this->addElement('select', 'title', array('label' => 'Title', 'required' => true, 'multiOptions' => TenantsInsuranceQuote_Form_Subforms_PersonalDetails::$titles, 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please select your title', 'notEmptyInvalid' => 'Please select your title')))), 'class' => 'form-control'));
     // Add first name element
     $this->addElement('text', 'first_name', array('label' => 'First name', 'required' => true, 'filters' => array('StringTrim'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter your first name', 'notEmptyInvalid' => 'Please enter your first name'))), array('regex', true, array('pattern' => '/^[a-z\\-\\ \']{2,}$/i', 'messages' => 'First name must contain at least two alphabetic characters and only basic punctuation (hyphen, space and single quote)'))), 'class' => 'form-control'));
     // Add last name element
     $this->addElement('text', 'last_name', array('label' => 'Last name', 'required' => true, 'filters' => array('StringTrim'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter your last name'))), array('regex', true, array('pattern' => '/^[a-z\\-\\ \']{2,}$/i', 'messages' => 'Last name must contain at least two alphabetic characters and only basic punctuation (hyphen, space and single quote)'))), 'class' => 'form-control'));
     // Email element
     $this->addElement('text', 'email', array('label' => 'Email Address', 'required' => true, 'filters' => array('StringTrim'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Email address is required')))), 'class' => 'form-control'));
     // Modify email error messages & add validator
     $emailValidator = new Zend_Validate_EmailAddress();
     $emailValidator->setMessages(array(Zend_Validate_EmailAddress::INVALID_HOSTNAME => "Domain name invalid in email address", Zend_Validate_EmailAddress::INVALID_FORMAT => "Invalid email address"));
     $this->getElement('email')->addValidator($emailValidator);
     //The password element.
     $passwordElement = new Zend_Form_Element_Password('password', array('validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Password is required')))), 'class' => 'form-control'));
     $passwordElement->setRequired(true);
     $passwordElement->setLabel('Password');
     $passwordElement->setAttribs(array('class' => 'form-control'));
     $passwordElement->addValidator(new Zend_Validate_PasswordStrength());
     $validator = new Zend_Validate_Identical();
     $validator->setToken('confirm_password');
     $validator->setMessage('Passwords are not the same', Zend_Validate_Identical::NOT_SAME);
     $passwordElement->addValidator($validator);
     $this->addElement($passwordElement);
     //The confirm password element.
     $confirmPasswordElement = new Zend_Form_Element_Password('confirm_password');
     $confirmPasswordElement->setRequired(true);
     $confirmPasswordElement->setLabel('Confirm Password');
     $confirmPasswordElement->setAttribs(array('class' => 'form-control'));
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Please confirm your password');
     $confirmPasswordElement->addValidator($validator);
     $this->addElement($confirmPasswordElement);
     // Security question & answer
     $this->addElement('select', 'security_question', array('label' => 'Security Question', 'required' => true, 'multiOptions' => array('' => 'Please select'), 'decorators' => array(array('ViewHelper', array('escape' => false)), array('Label', array('escape' => false))), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Security question is required')))), 'class' => 'form-control'));
     $this->addElement('text', 'security_answer', array('label' => 'Answer', 'required' => true, 'filters' => array('StringTrim'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Security answer is required')))), 'class' => 'form-control'));
     $this->addElement('hidden', 'refno', array('required' => false, 'class' => 'noalt'));
     // Add the submit button
     $this->addElement('submit', 'submit', array('ignore' => true, 'label' => 'Register', 'class' => 'btn btn-primary pull-right'));
     // Set up the element decorators
     $this->setElementDecorators(array('ViewHelper', 'Label', 'Errors'));
     // Set up the decorator on the form and add in decorators which are removed
     $this->addDecorator('FormElements')->addDecorator('HtmlTag', array('tag' => 'div', 'class' => 'form_section'))->addDecorator('Form');
     // Remove the label from the submit button
     $element = $this->getElement('submit');
     $element->removeDecorator('label');
     $this->getElement('refno')->removeDecorator('HtmlTag');
 }
예제 #9
0
 public function init()
 {
     // валидаторы
     $alnum = new Zend_Validate_Alnum();
     $alnum->setMessage($this->messageAlnum);
     $notEmpty = new Zend_Validate_NotEmpty();
     $notEmpty->setMessage($this->notEmpty, "isEmpty");
     // создаем форму
     $this->setName('interview');
     $this->setAttribs(array('method' => "post", "class" => "form-horizontal"));
     $this->setDecorators(array('FormElements', 'Form'));
     $this->createFormElements($this, $this->elementsForm());
     return $this;
 }
예제 #10
0
 /**
  * Initialise the form
  * 
  * @todo Validation
  * @return void 
  */
 public function init()
 {
     // Set request method
     $this->setMethod('POST');
     // Add title element
     $this->addElement('text', 'title', array('label' => 'Title'));
     // Add first name element
     $this->addElement('text', 'first_name', array('label' => 'First name'));
     // Add last name element
     $this->addElement('text', 'last_name', array('label' => 'Last name'));
     $this->addElement('password', 'existing_password', array('required' => true, 'filters' => array('StringTrim'), 'class' => 'form-control'));
     // Email element
     $this->addElement('text', 'email', array('label' => 'Email Address'));
     //The password element.
     $passwordElement = new Zend_Form_Element_Password('password');
     $passwordElement->setRequired(false);
     // New password is not required to update options
     $passwordElement->addValidator(new Zend_Validate_PasswordStrength());
     $passwordElement->setAttribs(array('class' => 'form-control'));
     $validator = new Zend_Validate_Identical();
     $validator->setToken('confirm_password');
     $validator->setMessage('Passwords are not the same', Zend_Validate_Identical::NOT_SAME);
     $passwordElement->addValidator($validator);
     $this->addElement($passwordElement);
     //The confirm password element.
     $confirmPasswordElement = new Zend_Form_Element_Password('confirm_password');
     $confirmPasswordElement->setRequired(false);
     // New password is not required to update options
     $confirmPasswordElement->setAttribs(array('class' => 'form-control'));
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Please confirm your password');
     $confirmPasswordElement->addValidator($validator);
     $this->addElement($confirmPasswordElement);
     // Security question & answer
     $this->addElement('select', 'security_question', array('required' => true, 'multiOptions' => array(0 => 'Please select'), 'decorators' => array(array('ViewHelper', array('escape' => false)), array('Label', array('escape' => false))), 'class' => 'form-control'));
     $this->addElement('text', 'security_answer', array('required' => true, 'filters' => array('StringTrim'), 'class' => 'form-control'));
     // Add the submit button
     $this->addElement('submit', 'submit', array('ignore' => true, 'class' => 'btn btn-primary pull-right', 'label' => 'Save'));
     // Set up the element decorators
     $this->setElementDecorators(array('ViewHelper', 'Label', 'Errors', array('HtmlTag', array('tag' => 'div'))));
     // Set up the decorator on the form and add in decorators which are removed
     $this->addDecorator('FormElements')->addDecorator('HtmlTag', array('tag' => 'div', 'class' => 'form_section one-col'))->addDecorator('Form');
     // Set custom subform decorator
     $this->setDecorators(array(array('ViewScript', array('viewScript' => 'subforms/edit-account.phtml'))));
     // Remove the label from the submit button
     $element = $this->getElement('submit');
     $element->removeDecorator('label');
 }
예제 #11
0
 public function __construct($options = null)
 {
     parent::__construct($options);
     $this->setName('serverSettings');
     $server_name = new Zend_Form_Element_Text('name');
     $server_name->setLabel(_r('Name'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the Server Name'));
     $server_name->addValidators(array($not_empty));
     $hostname = new Zend_Form_Element_Text('hostname');
     $hostname->setLabel(_r('Hostname'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the Hostname'));
     $hostname->addValidators(array($not_empty));
     $ct_map = new GD_Model_ConnectionTypesMapper();
     $connection_types = $ct_map->fetchAll();
     $connection_type_id = new Zend_Form_Element_Select('connectionTypeId');
     $connection_type_id->setLabel(_r('Connection Type'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please choose a Connection Type'));
     $connection_type_id->addValidators(array($not_empty));
     foreach ($connection_types as $connection_type) {
         $connection_type_id->addMultiOption($connection_type->getId(), $connection_type->getName());
     }
     $port = new Zend_Form_Element_Text('port');
     $port->setLabel(_r('Port'))->setRequired(false)->addFilter('StripTags')->addFilter('StringTrim');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the Port Number'));
     $port->addValidators(array($not_empty));
     $username = new Zend_Form_Element_Text('username');
     $username->setLabel(_r('Username'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim')->setAttrib('autocomplete', 'off');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the Username'));
     $username->addValidators(array($not_empty));
     $password = new Zend_Form_Element_Password('password');
     $password->setLabel('Password')->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim')->setAttrib('autocomplete', 'off')->setAttrib('renderPassword', true);
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the Password'));
     $password->addValidators(array($not_empty));
     $report_path = new Zend_Form_Element_Text('remotePath');
     $report_path->setLabel(_r('Remote Path'))->setRequired(false)->addFilter('StripTags')->addFilter('StringTrim');
     $submit = new Zend_Form_Element_Image('btn_submit');
     $submit->setImage('/images/buttons/small/save-changes.png');
     $this->addElements(array($server_name, $hostname, $connection_type_id, $port, $username, $password, $report_path, $submit));
 }
예제 #12
0
 public function __construct($options = null)
 {
     parent::__construct($options);
     $this->setName('login_form')->setAction('/auth/login')->setMethod('post');
     $username = new Zend_Form_Element_Text('username');
     $username->setLabel(_r('Username'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter your User Name'));
     $username->addValidators(array($not_empty));
     $password = new Zend_Form_Element_Password('password');
     $password->setLabel(_r('Password'))->setRequired(true)->addFilter('StripTags');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter your Password'));
     $password->addValidators(array($not_empty));
     $submit = new Zend_Form_Element_Image('btn_submit');
     $submit->setImage('/images/buttons/small/login.png');
     $this->addElements(array($username, $password, $submit));
 }
예제 #13
0
 public function __construct()
 {
     // Validators --------------------------
     $notEmpty = new Zend_Validate_NotEmpty(array(true));
     $notEmpty->setMessage($this->_errorMessages['isEmpy']);
     $digits = new Zend_Validate_Digits();
     $digits->setMessage($this->_errorMessages['digits']);
     $emailValidator = new Zend_Validate_EmailAddress();
     $emailValidator->setMessage($this->_errorMessages['emailValidator']);
     $foneValidator = new Zend_Validate_StringLength();
     $foneValidator->setMin(8);
     $foneValidator->setMessage($this->_errorMessages['foneValidator']);
     //--------------------------------------
     $nome = new Zend_Form_Element_Text('nome');
     $nome->setAttrib('class', 'form-control');
     $nome->setRequired(true);
     $nome->addValidator($notEmpty, true);
     //--------------------------------------------------------
     $fone = new Zend_Form_Element_Text('fone');
     $fone->setAttrib('class', 'form-control');
     $fone->setRequired(true);
     $fone->addValidator($notEmpty, true);
     $fone->addValidator($digits, true);
     $fone->addValidator($foneValidator, true);
     //--------------------------------------------------------
     $email = new Zend_Form_Element_Text('email');
     $email->setAttrib('class', 'form-control');
     $email->setRequired(true);
     $email->addValidator($notEmpty, true);
     $email->addValidator($emailValidator, true);
     //--------------------------------------------------------
     $mensagem = new Zend_Form_Element_Textarea('mensagem');
     $mensagem->setAttrib('class', 'form-control');
     $mensagem->setAttrib('cols', 30);
     $mensagem->setAttrib('rows', 10);
     $mensagem->setRequired(true);
     $mensagem->addValidator($notEmpty, true);
     //--------------------------------------------------------
     $this->addElement($nome);
     $this->addElement($fone);
     $this->addElement($email);
     $this->addElement($mensagem);
     $this->setElementDecorators(array('ViewHelper', 'Errors'));
 }
예제 #14
0
 public function init()
 {
     // валидаторы
     $alnum = new Zend_Validate_Alnum();
     $alnum->setMessage($this->messageAlnum);
     $notEmpty = new Zend_Validate_NotEmpty();
     $notEmpty->setMessage($this->notEmpty, "isEmpty");
     // фильтры
     $stringTrim = new Zend_Filter_StringTrim();
     $stripTags = new Zend_Filter_StripTags();
     // добавляем элементы формы в массив, потом будем собирать форму в цыкле
     $elementsForm = array('surname' => array('type' => 'text', 'label' => 'ФИО', 'attribs' => array('class' => 'span12', 'placeholder' => 'Фамилия')), 'name' => array('label' => 'Имя', 'attribs' => array('class' => 'span12', 'placeholder' => 'Имя')), 'patronymic' => array('label' => 'Отчество', 'attribs' => array('class' => 'span12', 'placeholder' => 'Отчество')), 'sex' => array('type' => 'select', 'label' => 'Пол', 'multiOptions' => array('male' => 'Мужской', 'female' => 'Женский')), 'birthday' => array('label' => 'Дата Рождения', 'attribs' => $this->datepicker), 'maidenName' => array('label' => 'Девичья фамилия (если менялась)'), 'placeOfBirth' => array('label' => 'Место рождения (по паспорту)'), 'oldCountry' => array('label' => 'Страна рождения', 'attribs' => array('class' => 'span12')), 'nationality' => array('label' => 'Текущее гражданство', 'attribs' => array('class' => 'span12')), 'citizenship' => array('label' => 'Гражданство (при рождении)', 'attribs' => array('class' => 'span12')), 'FIFather' => array('label' => 'И.Ф Отца', 'attribs' => array('class' => 'span12')), 'FIMother' => array('label' => 'И.Ф Матери', 'attribs' => array('class' => 'span12')), 'maritalStatus' => array('type' => 'select', 'label' => 'Семейное Положение', 'multiOptions' => array('married' => 'женат/замужем', 'single' => 'холост/незамужем')), 'addressOfRegistration' => array('label' => 'Адрес (по прописке)'), 'telephoneNumber' => array('label' => 'Номер телефона'), 'profession' => array('label' => 'Профессия'), 'refsCompany' => array('label' => 'Назв. фирмы'), 'cityWhereTriesFirm' => array('label' => 'Город, где находится фирма'), 'workPhone' => array('label' => 'Раб телефон'), 'firstBorderCrossing' => array('label' => 'Первый пункт пересечения границы'), 'foreignPassport' => array('type' => 'text', 'label' => 'Данные заграничного пасспорта', 'attribs' => array('class' => 'span12', 'placeholder' => 'Серия и номер')), 'startDate' => array('type' => 'text', 'label' => 'Дата выдачи', 'attribs' => array('class' => 'span12 datepicker', 'readonly' => '', 'placeholder' => 'Дата выдачи')), 'endDate' => array('type' => 'text', 'label' => 'Дата окончания', 'attribs' => array('class' => 'span12 datepicker', 'readonly' => '', 'placeholder' => 'Дата окончания')), 'issued' => array('type' => 'text', 'label' => 'Кем выдан', 'attribs' => array('class' => 'span12', 'placeholder' => 'Кем выдан')), 'schengenVisasLast' => array('type' => 'textarea', 'label' => 'Шенгенские визы за последние 3 года', 'attribs' => $this->textareaAttribs), 'serNumPassport' => array('label' => 'Серия, номер гражданского паспорта'), 'addressActual' => array('label' => 'Адрес (фактический)'), 'theseSpouse' => array('type' => 'textarea', 'label' => 'Данные супруга(и)Девичья фамилия, дата рождения, место рождения', 'attribs' => $this->textareaAttribs), 'forMinors' => array('type' => 'textarea', 'label' => 'Для несовершеннолетних: ФИО, адрес и гражданство законного представителя', 'attribs' => $this->textareaAttribs), 'whoPays' => array('type' => 'select', 'label' => 'Кто оплачивает поездку', 'multiOptions' => array('myself' => 'Сам турист', 'sponsor' => 'Спонсор')), 'sponsor' => array('label' => 'Кто является спонсором'));
     // создаем форму
     $this->setName('interview');
     $this->setAttribs(array('method' => "post", "class" => "form-horizontal"));
     $this->setDecorators(array('FormElements', 'Form'));
     $this->createFormElements($this, $elementsForm, $this->elementDecorators, $this->buttonLabel, $this->buttonDecorators);
     return $this;
 }
예제 #15
0
 public function init()
 {
     $dbValidator = new Zend_Validate_Db_RecordExists(array('table' => 'users', 'field' => 'login'));
     $dbValidator->setMessage('Пользователя с таким именем нет в наших записях.');
     $alnum = new Zend_Validate_Alnum();
     $alnum->setMessage('Только буквы и цыфры!');
     $notEmpty = new Zend_Validate_NotEmpty();
     $notEmpty->setMessage('Поле обязательно для заполнения', 'isEmpty');
     $stringLength = new Zend_Validate_StringLength(array('min' => 3));
     $stringLength->setMessage('Длина поля должна быть больше трех символов.');
     if (!empty($_GET['referer'])) {
         $referer = $_GET['referer'];
     } else {
         $referer = '/';
     }
     $elementsForm = array('login' => array('type' => 'text', 'label' => 'Введите логин'), 'password' => array('type' => 'text', 'label' => 'Введите пароль', 'validators' => array('alnum' => $alnum, 'notEmpty' => $notEmpty, 'dbValidator' => $dbValidator, 'stringLength' => $stringLength)), 'redirect' => array('type' => 'hidden', 'attribs' => array('value' => $referer)));
     // имя формы;
     $this->setName('auth');
     $this->setAttribs(array('method' => "post", "role" => "form", "class" => "form-horizontal"));
     $this->createFormElements($this, $elementsForm, $this->elementDecorators, 'Войти', $this->buttonDecorators);
     return $this;
 }
예제 #16
0
 public function __construct(GD_Model_Project $project, $options = null, $new_project = false)
 {
     parent::__construct($options);
     $this->setName('projectSettings');
     $project_name = new Zend_Form_Element_Text('name');
     $project_name->setLabel(_r('Project Name'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the project name'));
     $project_name->addValidators(array($not_empty));
     // if we're adding a new project, we need to make sure it's unique
     if ($new_project) {
         $unique_name = new GD_Validate_UniqueName();
         $project_name->addValidators(array($unique_name));
     }
     $git_validator = new GD_Validate_GitUrl();
     $repository_url = new Zend_Form_Element_Text('repositoryUrl');
     $repository_url->setLabel(_r('Repository URL'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the Repository URL'));
     $repository_url->addValidators(array($not_empty, $git_validator));
     $deployment_branch = new Zend_Form_Element_Text('deploymentBranch');
     $deployment_branch->setLabel(_r('Deployment Branch'))->setRequired(true)->addFilter('StripTags')->addFilter('StringTrim');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the name of the Deployment Branch'));
     $deployment_branch->addValidators(array($not_empty));
     if (!$new_project) {
         $deployment_branch->addValidator(new GD_Validate_GitBranch($project));
     }
     $public_key = new Zend_Form_Element_Textarea('publicKey');
     $public_key->setLabel(_r('Public Key'))->setRequired(false)->setAttrib('readonly', 'readonly');
     $not_empty = new Zend_Validate_NotEmpty();
     $not_empty->setMessage(_r('Please enter the Public Key'));
     $public_key->addValidators(array($not_empty));
     $submit = new Zend_Form_Element_Image('btn_submit');
     $submit->setImage('/images/buttons/small/save-changes.png');
     $submit->class = "processing_btn size_small";
     $this->addElements(array($project_name, $repository_url, $deployment_branch, $public_key, $submit));
 }
예제 #17
0
 /**
  * Функция создание формы 
  * @param type $objForm объект формы 
  * @param type $elementsForm элементы в  виде массива
  * @return type объект формы
  */
 protected function createFormElements($objForm, $elementsForm)
 {
     foreach ($elementsForm as $key => $value) {
         // определяем тип по умолчанию
         $type = !empty($value['type']) ? $value['type'] : 'text';
         // массив с опциями
         $params = array();
         if ($type !== 'hidden') {
             $params['label'] = !empty($value['label']) ? $value['label'] : die('Не оределлен атрибут label!');
         }
         $params['decorators'] = !empty($value['decorators']) ? $value['decorators'] : $this->elementDecorators();
         if (!empty($value['multiOptions'])) {
             $params['multiOptions'] = $value['multiOptions'];
         }
         $value['required'] = !empty($value['required']) ? $value['required'] : true;
         $value['attribs'] = !empty($value['attribs']) ? $value['attribs'] : array('class' => 'form-control');
         $value['filters'] = !empty($value['filters']) ? $value['filters'] : '';
         $value['validators'] = !empty($value['validators']) ? $value['validators'] : '';
         // присваевыем стандартные фильтры и валидаторы
         if (empty($value['filters'])) {
             $stringTrim = new Zend_Filter_StringTrim();
             $stripTags = new Zend_Filter_StripTags();
             $value['filters'] = array('stringTrim' => $stringTrim, 'stripTags' => $stripTags);
         }
         if (empty($value['validators'])) {
             $alnum = new Zend_Validate_Alnum();
             $alnum->setMessage('Только буквы и цыфры!');
             $notEmpty = new Zend_Validate_NotEmpty();
             $notEmpty->setMessage('Поле обязательно для заполнения', 'isEmpty');
             $value['validators'] = array('alnum' => $alnum, 'notEmpty' => $notEmpty);
         }
         // провеки на тип если нужен новый то надо добавить по аналогии
         switch ($type) {
             case 'text':
                 $elem = new Zend_Form_Element_Text($key);
                 break;
             case 'textarea':
                 $elem = new Zend_Form_Element_Textarea($key);
                 break;
             case 'select':
                 $elem = new Zend_Form_Element_Select($key);
                 break;
             case 'password':
                 $elem = new Zend_Form_Element_Password($key);
                 break;
             case 'hidden':
                 $elem = new Zend_Form_Element_Hidden($key);
                 break;
             case 'radio':
                 $elem = new Zend_Form_Element_Radio($key);
                 break;
         }
         // присваиваем атрибуты
         if (!empty($value['attribs'])) {
             foreach ($value['attribs'] as $k => $val) {
                 $params[$k] = $val;
             }
         }
         // присваиваем опции
         if (!empty($elem)) {
             $elem->setOptions($params);
         }
         // добавляем валидаторы
         if (!empty($value['validators']) && $type !== 'hidden') {
             foreach ($value['validators'] as $val) {
                 $elem->addValidator($val);
             }
         }
         // добавляем фильтры
         if (!empty($value['filters']) && $type !== 'hidden') {
             foreach ($value['filters'] as $val) {
                 $elem->addFilter($val);
             }
         }
         // вот тут писец
         if (!empty($value['required']) && $type !== 'hidden') {
             $elem->setRequired(TRUE);
         }
         // добавляем элемент на форму
         $objForm->addElement($elem);
     }
     // добавляем кнопку
     $objForm->addElement('submit', 'submit', array('label' => $this->buttonLabel, 'decorators' => $this->buttonDecorators(), 'class' => 'btn btn-default'));
     return $objForm;
 }
예제 #18
0
 /**
  * Validation rules for store
  *
  * @return \Zend_Validate_Interface|null
  */
 protected function _getValidationRulesBeforeSave()
 {
     $validator = new \Magento\Framework\Validator\DataObject();
     $storeLabelRule = new \Zend_Validate_NotEmpty();
     $storeLabelRule->setMessage(__('Name is required'), \Zend_Validate_NotEmpty::IS_EMPTY);
     $validator->addRule($storeLabelRule, 'name');
     $storeCodeRule = new \Zend_Validate_Regex('/^[a-z]+[a-z0-9_]*$/');
     $storeCodeRule->setMessage(__('The store code may contain only letters (a-z), numbers (0-9) or underscore (_),' . ' and the first character must be a letter.'), \Zend_Validate_Regex::NOT_MATCH);
     $validator->addRule($storeCodeRule, 'code');
     return $validator;
 }
예제 #19
0
	public function formValidator($form,$formType)
	{
		$numberValidator = new Zend_Validate_Int();
		$numberValidator->setMessage(General_Models_Text::$text_notInt);
		$form->getElement('mileEarly')->addValidator($numberValidator);
		$form->getElement('mileEnd')->addValidator($numberValidator);
		
		$emptyValidator = new Zend_Validate_NotEmpty();
		$emptyValidator->setMessage(General_Models_Text::$text_notEmpty);
		$form->getElement('mileEarly')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('mileEnd')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		return $form;
	}
 public function __construct($arrParam = array(), $options = null)
 {
     $validateNotEmpty = new Zend_Validate_NotEmpty();
     $validateNotEmpty->setMessage('Không được để trống.');
     //////////////////////////////////
     //Kiem tra fullname /////////////
     //////////////////////////////////
     $validateStrLength = new Zend_Validate_StringLength(3, 100);
     $validateStrLength->setMessage('Giá trị nhập vào không hợp lệ, giá trị nhập vào là một chuỗi.', 'stringLengthInvalid');
     $validateStrLength->setMessage("Chuỗi nhập vào phải lớn hơn %min% ký tự.", 'stringLengthTooShort');
     $validateStrLength->setMessage("Chuỗi nhập vào phải nhỏ hơn %max% ký tự.", 'stringLengthTooLong');
     $validator = new Zend_Validate();
     $validator->addValidator($validateNotEmpty, true)->addValidator($validateStrLength, true);
     if (!$validator->isValid($arrParam['fullname'])) {
         $message = $validator->getMessages();
         $this->_messageError['fullname'] = 'Họ và tên: ' . current($message);
         $arrParam['fullname'] = '';
     }
     //////////////////////////////////
     //Kiem tra email /////////////
     //////////////////////////////////
     $validateEmail = new Zend_Validate_EmailAddress();
     $validateEmail->setMessage('Không hợp lệ, Giá trị nhập vào nên là chuỗi.', 'emailAddressInvalid');
     $validateEmail->setMessage("'%value%' không đúng định dạng email.Email có dạng 'local-part@hostname'", 'emailAddressInvalidFormat');
     $validateEmail->setMessage("'%value%' không đúng định dạng email.Email có dạng 'local-part@hostname'", 'emailAddressInvalidHostname');
     $validator = new Zend_Validate();
     $validator->addValidator($validateNotEmpty, true)->addValidator($validateEmail, true);
     if (!$validator->isValid($arrParam['email'])) {
         $message = $validator->getMessages();
         $this->_messageError['email'] = 'Địa chỉ Email: ' . current($message);
         $arrParam['email'] = '';
     }
     //////////////////////////////////
     //Kiem tra title /////////////
     //////////////////////////////////
     $validator = new Zend_Validate();
     $validator->addValidator($validateNotEmpty, true)->addValidator($validateStrLength, true);
     if (!$validator->isValid($arrParam['title'])) {
         $message = $validator->getMessages();
         $this->_messageError['title'] = 'Tiêu đề ' . current($message);
         $arrParam['title'] = '';
     }
     //////////////////////////////////
     //Kiem tra Content /////////////
     //////////////////////////////////
     $validateStrLengthMsg = new Zend_Validate_StringLength(20);
     $validateStrLengthMsg->setMessage('Giá trị nhập vào không hợp lệ, giá trị nhập vào là một chuỗi.', 'stringLengthInvalid');
     $validateStrLengthMsg->setMessage("Chuỗi nhập vào phải lớn hơn %min% ký tự.", 'stringLengthTooShort');
     $validateStrLengthMsg->setMessage("Chuỗi nhập vào phải nhỏ hơn %max% ký tự.", 'stringLengthTooLong');
     $validator = new Zend_Validate();
     $validator->addValidator($validateNotEmpty, true)->addValidator($validateStrLengthMsg, true);
     if (!$validator->isValid($arrParam['message'])) {
         $message = $validator->getMessages();
         $this->_messageError['message'] = 'Nội dung: ' . current($message);
         $arrParam['message'] = '';
     }
     //========================================
     // TRUYEN CAC GIA TRI DUNG VAO MANG $_arrData
     //========================================
     $this->_arrData = $arrParam;
 }
예제 #21
0
	public function formValidator($form,$formType)
	{	
		$emptyValidator = new Zend_Validate_NotEmpty();
		$emptyValidator->setMessage(General_Models_Text::$text_notEmpty);
		$form->getElement('logDate')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('part')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('operator')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('foreman')->setAllowEmpty(false)
								->addValidator($emptyValidator);

		$dateValidator = new Zend_Validate_Date();
		$dateValidator->setMessage(General_Models_Text::$text_notDate);
		$form->getElement('logDate')->addValidator($dateValidator);
		
		$intValidator = new Zend_Validate_Int();
		$intValidator->setMessage(General_Models_Text::$text_notInt);
		$form->getElement('number')->addValidator($intValidator);
		$form->getElement('tempHi')->addValidator($intValidator);
		$form->getElement('tempLo')->addValidator($intValidator);
		
		return $form;
	}
예제 #22
0
	public function formValidator($form,$formType)
	{	
		$emptyValidator = new Zend_Validate_NotEmpty();
		$emptyValidator->setMessage(General_Models_Text::$text_notEmpty);
		$form->getElement('subTask')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('startDate')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('endDate')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('contactName')->setAllowEmpty(false)
								->addValidator($emptyValidator);

		$dateValidator = new Zend_Validate_Date();
		$dateValidator->setMessage(General_Models_Text::$text_notDate);
		$form->getElement('startDate')->addValidator($dateValidator);
		$form->getElement('endDate')->addValidator($dateValidator);
		
		return $form;
	}
예제 #23
0
	public function formValidator($form,$formType)
	{	
		$emptyValidator = new Zend_Validate_NotEmpty();
		$emptyValidator->setMessage(General_Models_Text::$text_notEmpty);
		$form->getElement('name')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('birth')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('edu')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('enroll')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('political')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('phoneMob')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('idCard')->setAllowEmpty(false)
								->addValidator($emptyValidator);
								
		$dateValidator = new Zend_Validate_Date();
		$dateValidator->setMessage(General_Models_Text::$text_notDate);
		$form->getElement('birth')->addValidator($dateValidator);
		$form->getElement('enroll')->addValidator($dateValidator);
		$form->getElement('probStart')->addValidator($dateValidator);
		$form->getElement('probEnd')->addValidator($dateValidator);
		$form->getElement('secDate')->addValidator($dateValidator);
		
		return $form;
	}
예제 #24
0
 /**
  * returns an validator for a single category
  *
  * @return Zend_Filter_Input validator
  */
 protected function getValidator()
 {
     // define filter
     $filterTrim = new Zend_Filter_StringTrim();
     $filterUtf8 = new application_filter_utf8();
     $filter = array('id' => $filterTrim, 'name' => array($filterTrim, $filterUtf8), 'position' => $filterTrim);
     // define validators
     $validatorId = new application_validate_categoryid();
     $validatorId->setMessage(Zend_Registry::get('language')->translate("category doesn't exists"), application_validate_categoryid::NOT_EXISTS);
     $validatorNotEmpty = new Zend_Validate_NotEmpty();
     $validatorNotEmpty->setMessage(Zend_Registry::get('language')->translate("Value is required and can't be empty"), Zend_Validate_NotEmpty::IS_EMPTY);
     $validatorAlnum = new Zend_Validate_Alnum(true);
     $validatorAlnum->setMessage(Zend_Registry::get('language')->translate('Only alphanummeric values allowed'), Zend_Validate_Alnum::NOT_ALNUM);
     $validatorAlnum->setMessage(Zend_Registry::get('language')->translate("Value is required and can't be empty"), Zend_Validate_Alnum::STRING_EMPTY);
     $validatorNum = new Zend_Validate_Digits(false);
     $validatorNum->setMessage(Zend_Registry::get('language')->translate('Only digits allowed'), Zend_Validate_Digits::NOT_DIGITS);
     $validatorNum->setMessage(Zend_Registry::get('language')->translate("Value is required and can't be empty"), Zend_Validate_Digits::STRING_EMPTY);
     $validators = array('id' => array($validatorId, Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'name' => array($validatorNotEmpty, Zend_Filter_Input::ALLOW_EMPTY => false, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_REQUIRED), 'position' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL));
     // create validation main object
     $validator = new Zend_Filter_Input($filter, $validators, array(), array(Zend_Filter_Input::NOT_EMPTY_MESSAGE => Zend_Registry::get('language')->translate("Value is required and can't be empty"), Zend_Filter_Input::BREAK_CHAIN => false));
     // return filter input object
     return $validator;
 }
예제 #25
0
 public function init()
 {
     $this->addSubForm(new LandlordsReferencing_Form_Subforms_DataProtection(), 'subform_dataprotection');
     $this->setMethod('post');
     //Prospective landlord name
     $this->addElement('select', 'title', array('label' => 'Title *', 'required' => true, 'multiOptions' => array('Mr' => 'Mr', 'Ms' => 'Ms', 'Mrs' => 'Mrs', 'Miss' => 'Miss', 'Dr' => 'Dr', 'Prof' => 'Professor', 'Sir' => 'Sir'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please select your title', 'notEmptyInvalid' => 'Please select a valid title'))))));
     //First name entry
     $this->addElement('text', 'first_name', array('label' => 'First Name *', 'required' => true, 'filters' => array('StringTrim'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter your first name')))), 'attribs' => array('data-ctfilter' => 'yes')));
     //Last name entry
     $this->addElement('text', 'last_name', array('label' => 'Last Name *', 'required' => true, 'filters' => array('StringTrim'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter your last name')))), 'attribs' => array('data-ctfilter' => 'yes')));
     //Prospective landlord address details.
     $hiddenElement = new Zend_Form_Element_Hidden('property_number_name');
     $hiddenElement->setRequired(false);
     $hiddenElement->clearDecorators();
     $this->addElement($hiddenElement);
     // Add postcode element
     $this->addElement('text', 'property_postcode', array('label' => 'Postcode *', 'required' => true, 'filters' => array('StringTrim'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter a postcode', 'notEmptyInvalid' => 'Please enter a valid postcode'))), array('regex', true, array('pattern' => '/^[0-9a-z]{2,}\\ ?[0-9a-z]{2,}$/i', 'messages' => 'Postcode must be in postcode format'))), 'attribs' => array('data-ctfilter' => 'yes')));
     // Add address select element
     $this->addElement('select', 'property_address', array('label' => 'Please select your address *', 'required' => true, 'multiOptions' => array('' => '--- please select ---'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please select your property address', 'notEmptyInvalid' => 'Please select your property address')))), 'attribs' => array('data-ctfilter' => 'yes')));
     //Phone number entry
     $this->addElement('text', 'phone_number', array('label' => 'Telephone Number *', 'required' => true, 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter your phone number'))), array('regex', true, array('pattern' => '/^((\\+44\\s?\\(0\\)\\s?\\d{2,4})|(\\+44\\s?(01|02|03|07|08)\\d{2,3})|(\\+44\\s?(1|2|3|7|8)\\d{2,3})|(\\(\\+44\\)\\s?\\d{3,4})|(\\(\\d{5}\\))|((01|02|03|07|08)\\d{2,3})|(\\d{5}))(\\s|-|.)(((\\d{3,4})(\\s|-)(\\d{3,4}))|((\\d{6,7})))$/', 'messages' => 'Not a valid phone number'))), 'attribs' => array('data-ctfilter' => 'yes')));
     //Fax number entry
     $this->addElement('text', 'fax_number', array('label' => 'Fax Number', 'required' => false, 'validators' => array(array('regex', true, array('pattern' => '/^((\\+44\\s?\\(0\\)\\s?\\d{2,4})|(\\+44\\s?(01|02|03|07|08)\\d{2,3})|(\\+44\\s?(1|2|3|7|8)\\d{2,3})|(\\(\\+44\\)\\s?\\d{3,4})|(\\(\\d{5}\\))|((01|02|03|07|08)\\d{2,3})|(\\d{5}))(\\s|-|.)(((\\d{3,4})(\\s|-)(\\d{3,4}))|((\\d{6,7})))$/', 'messages' => 'Not a valid phone number'))), 'attribs' => array('data-ctfilter' => 'yes')));
     //Mobile number entry. We do not currently capture this, so WTF do we ask for it?
     $this->addElement('text', 'mobile_number', array('label' => 'Mobile Number *', 'required' => true, 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter your mobile number'))), array('regex', true, array('pattern' => '/^07([\\d]{3})[(\\D\\s)]?[\\d]{3}[(\\D\\s)]?[\\d]{3}$/', 'messages' => 'Not a valid mobile phone number'))), 'attribs' => array('data-ctfilter' => 'yes')));
     //The email elements.
     $emailElement = new Zend_Form_Element_Text('email');
     $emailElement->setLabel('Email *');
     $emailElement->setRequired(true);
     $emailElement->addFilter(new Zend_Filter_StringTrim());
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Please enter your email address');
     $emailElement->addValidator($validator);
     $validator = new Zend_Validate_EmailAddress();
     $validator->setMessages(array(Zend_Validate_EmailAddress::INVALID_HOSTNAME => "Domain name invalid in email address", Zend_Validate_EmailAddress::INVALID_FORMAT => "Invalid email address"));
     $emailElement->addValidator($validator);
     $this->addElement($emailElement);
     //The password element.
     $passwordElement = new Zend_Form_Element_Password('password');
     $passwordElement->setRequired(true);
     $passwordElement->setLabel('Password *');
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Please set a password');
     $passwordElement->addValidator($validator);
     $passwordElement->addValidator(new Zend_Validate_PasswordStrength());
     $validator = new Zend_Validate_Identical();
     $validator->setToken('confirm_password');
     $validator->setMessage('Passwords are not the same', Zend_Validate_Identical::NOT_SAME);
     $passwordElement->addValidator($validator);
     $this->addElement($passwordElement);
     //The confirm password element.
     $confirmPasswordElement = new Zend_Form_Element_Password('confirm_password');
     $confirmPasswordElement->setRequired(true);
     $confirmPasswordElement->setLabel('Confirm Password *');
     $validator = new Zend_Validate_NotEmpty();
     $validator->setMessage('Please confirm your password');
     $confirmPasswordElement->addValidator($validator);
     $this->addElement($confirmPasswordElement);
     // Security question & answer
     $this->addElement('select', 'security_question', array('label' => 'Security Question *', 'required' => true, 'multiOptions' => array('' => 'Please select'), 'registerInArrayValidator' => false, 'decorators' => array(array('ViewHelper', array('escape' => false)), array('Label', array('escape' => false))), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please select your security question', 'notEmptyInvalid' => 'Please select your security question'))))));
     $this->addElement('text', 'security_answer', array('label' => 'Answer *', 'required' => true, 'filters' => array('StringTrim'), 'validators' => array(array('NotEmpty', true, array('messages' => array('isEmpty' => 'Please enter your security answer'))))));
     $this->addElement('text', 'insurance_renewal_date', array('label' => 'Next Landlords Insurance Renewal Date (dd/mm/yyyy)', 'required' => false, 'filters' => array('StringTrim')));
     $insuranceRenewalDate = $this->getElement('insurance_renewal_date');
     $validator = new Zend_Validate_DateCompare();
     $validator->minimum = new Zend_Date(mktime(0, 0, 0, date('m'), date('d'), date('Y')));
     //        $validator->maximum = new Zend_Date(mktime(0, 0, 0, date('m'), date('d'), date('Y')) + 60 * 60 * 24 * 30);
     $validator->setMessages(array('msgMinimum' => 'Insurance renewal date cannot be in the past'));
     $insuranceRenewalDate->addValidator($validator, true);
     //Grab view and add the date picker JavaScript files into the page head
     $view = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view');
     $view->headLink()->appendStylesheet('/assets/vendor/bootstrap-datepicker/css/bootstrap-datepicker.min.css', 'screen');
     $view->headScript()->appendFile('/assets/vendor/jquery-date/js/date.js', 'text/javascript')->appendFile('/assets/vendor/bootstrap-datepicker/js/bootstrap-datepicker.min.js', 'text/javascript')->appendFile('/assets/landlords-referencing/js/referencingInsuranceRenewalDatePicker.js', 'text/javascript');
     //The submit button
     $submitElement = new Zend_Form_Element_Submit('submit');
     $submitElement->setIgnore(true);
     $this->addElement($submitElement);
     //Apply decorators. This has to be done unusually for t'ings to work.
     $this->setElementDecorators(array(array('ViewHelper', array('escape' => false)), array('Label', array('escape' => false))));
     $submitElement->removeDecorator('label');
     $this->property_number_name->removeDecorator('HtmlTag');
     //Grab view and add the address lookup JavaScript into the page head
     $view = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view');
     $view->headScript()->appendFile('/assets/common/js/addressLookup.js', 'text/javascript');
 }
예제 #26
0
 /**
  * returns an validator for settings params or error array
  *
  * @return Zend_Filter_Input|array on success data on error message array
  * @param array $data current data for validation
  */
 public function validate($data)
 {
     // define filter
     $filterTrim = new Zend_Filter_StringTrim();
     $filter = array('deleteItems' => $filterTrim, 'imagesPosition' => $filterTrim, 'imagesHeight' => $filterTrim, 'language' => $filterTrim, 'refresh' => $filterTrim, 'lastrefresh' => $filterTrim, 'view' => $filterTrim, 'offset' => $filterTrim, 'itemsperpage' => $filterTrim, 'selected' => $filterTrim, 'dateFilter' => $filterTrim, 'dateStart' => $filterTrim, 'dateEnd' => $filterTrim, 'search' => $filterTrim, 'unread' => $filterTrim, 'starred' => $filterTrim, 'currentPriorityStart' => $filterTrim, 'currentPriorityEnd' => $filterTrim, 'saveOpenCategories' => $filterTrim, 'openCategories' => $filterTrim, 'firstUnread' => $filterTrim, 'newWindow' => $filterTrim, 'public' => $filterTrim, 'anonymizer' => $filterTrim, 'sort' => $filterTrim, 'openitems' => $filterTrim, 'iconcache' => $filterTrim);
     // define validators
     $validatorType = new Zend_Validate_InArray(array("both", "multimedia", "messages"));
     $validatorType->setMessage(Zend_Registry::get('language')->translate('Only both, multimedia, message allowed'), Zend_Validate_InArray::NOT_IN_ARRAY);
     $validatorNotEmpty = new Zend_Validate_NotEmpty();
     $validatorNotEmpty->setMessage(Zend_Registry::get('language')->translate("Value is required and can't be empty"), Zend_Validate_NotEmpty::IS_EMPTY);
     $validatorNum = new Zend_Validate_Int(Zend_Registry::get('session')->language);
     $validatorNum->setLocale(Zend_Registry::get('session')->language);
     $validatorNum->setMessage(Zend_Registry::get('language')->translate('Only digits allowed'), Zend_Validate_Int::NOT_INT);
     $validatorInArray = new Zend_Validate_InArray(array("top", "bottom"));
     $validatorInArray->setMessage(Zend_Registry::get('language')->translate('Only top or bottom allowed'), Zend_Validate_InArray::NOT_IN_ARRAY);
     $validatorLanguage = new Zend_Validate_InArray(Zend_Registry::get('language')->getList());
     $validatorLanguage->setMessage(Zend_Registry::get('language')->translate('Language is not available'), Zend_Validate_InArray::NOT_IN_ARRAY);
     $validatorDate = new Zend_Validate_Date();
     $validatorDate->setMessage(Zend_Registry::get('language')->translate('No valid date given'), Zend_Validate_Date::INVALID);
     $validatorDate->setMessage(Zend_Registry::get('language')->translate('No valid date given'), Zend_Validate_Date::FALSEFORMAT);
     $validatorBiggerThanZero = new Zend_Validate_GreaterThan(0);
     $validatorBiggerThanZero->setMessage(Zend_Registry::get('language')->translate('Value must be bigger than 0'), Zend_Validate_GreaterThan::NOT_GREATER);
     $validatorBetweenDays = new Zend_Validate_Between(0, 2000);
     $validatorBetweenDays->setMessage(Zend_Registry::get('language')->translate('Please choose a value between 0 and 2000 days'), Zend_Validate_Between::NOT_BETWEEN);
     $validatorBetweenItemsperpage = new Zend_Validate_Between(0, 200);
     $validatorBetweenItemsperpage->setMessage(Zend_Registry::get('language')->translate('Please choose a value between 0 and 200 items per page'), Zend_Validate_Between::NOT_BETWEEN);
     $validatorSort = new Zend_Validate_InArray(array("date", "dateasc", "priority", "priorityasc"));
     $validatorSort->setMessage(Zend_Registry::get('language')->translate('Only date or rating allowed'), Zend_Validate_InArray::NOT_IN_ARRAY);
     $validators = array('deleteItems' => array($validatorNum, $validatorBetweenDays, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'imagesPosition' => array($validatorInArray, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'language' => array($validatorLanguage, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'refresh' => array($validatorNum, $validatorBiggerThanZero, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'lastrefresh' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'view' => array($validatorType, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'offset' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'itemsperpage' => array($validatorNum, $validatorBetweenItemsperpage, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'selected' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'dateFilter' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'search' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'unread' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'starred' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'currentPriorityStart' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'currentPriorityEnd' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'saveOpenCategories' => array($validatorNum, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'openCategories' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'firstUnread' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'newWindow' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'public' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'anonymizer' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'sort' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL, $validatorSort), 'openitems' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL), 'iconcache' => array(Zend_Filter_Input::ALLOW_EMPTY => true, Zend_Filter_Input::PRESENCE => Zend_Filter_Input::PRESENCE_OPTIONAL));
     // optional check date
     if (isset($data['dateFilter']) && $data['dateFilter'] == 1) {
         $validators['dateStart'] = $validatorDate;
         $validators['dateEnd'] = $validatorDate;
     } else {
         $validators['dateStart'] = array(Zend_Filter_Input::ALLOW_EMPTY => true);
         $validators['dateEnd'] = array(Zend_Filter_Input::ALLOW_EMPTY => true);
         $data['dateStart'] = '';
         $data['dateEnd'] = '';
     }
     // create validation main object
     $validator = new Zend_Filter_Input($filter, $validators, $data, array(Zend_Filter_Input::NOT_EMPTY_MESSAGE => Zend_Registry::get('language')->translate("Value is required and can't be empty"), Zend_Filter_Input::BREAK_CHAIN => false));
     // return filter input object
     return parent::validate($validator);
 }
예제 #27
0
	public function formValidator($form,$formType)
	{	
		$emptyValidator = new Zend_Validate_NotEmpty();
		$emptyValidator->setMessage(General_Models_Text::$text_notEmpty);
		$form->getElement('meaDate')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('measure')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('problem')->setAllowEmpty(false)
								->addValidator($emptyValidator);

		$dateValidator = new Zend_Validate_Date();
		$dateValidator->setMessage(General_Models_Text::$text_notDate);
		$form->getElement('meaDate')->addValidator($dateValidator);
		
		return $form;
	}
예제 #28
0
	public function formValidator($form,$formType)
	{
		$numberValidator = new Zend_Validate_Float();
		$numberValidator->setMessage(General_Models_Text::$text_notInt);
		$form->getElement('amount')->addValidator($numberValidator);
		
		$intValidator = new Zend_Validate_Int();
		$intValidator->setMessage(General_Models_Text::$text_notInt);
		$form->getElement('level')->addValidator($intValidator);
		$form->getElement('period')->addValidator($intValidator);
		$form->getElement('constrArea')->addValidator($intValidator);
		
		$emptyValidator = new Zend_Validate_NotEmpty();
		$emptyValidator->setMessage(General_Models_Text::$text_notEmpty);
		$form->getElement('name')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('contactName')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('license')->setAllowEmpty(false)
								->addValidator($emptyValidator);
		$form->getElement('startDate')->setAllowEmpty(false)
								->addValidator($emptyValidator);

		$dateValidator = new Zend_Validate_Date();
		$dateValidator->setMessage(General_Models_Text::$text_notDate);
		$form->getElement('startDate')->addValidator($dateValidator);
		
		return $form;
	}
예제 #29
0
 /**
  *
  * @param type $messages_prefixed
  * @return \Zend_Validate_NotEmpty 
  */
 protected function _getValidatorNotEmpty($messages_prefixed = "")
 {
     $notEmpty = new Zend_Validate_NotEmpty();
     $notEmpty->setMessage(sprintf($this->_translate("ERROR_NOT_EMPTY"), $this->_translate($messages_prefixed)), Zend_Validate_NotEmpty::IS_EMPTY);
     return $notEmpty;
 }
예제 #30
0
 /**
  * Add validation rules for the password management fields
  *
  * @param \Magento\Framework\Validator\Object $validator
  * @return void
  */
 protected function _addPasswordValidation(\Magento\Framework\Validator\Object $validator)
 {
     $passwordNotEmpty = new \Zend_Validate_NotEmpty();
     $passwordNotEmpty->setMessage(__('Password is required field.'), \Zend_Validate_NotEmpty::IS_EMPTY);
     $minPassLength = self::MIN_PASSWORD_LENGTH;
     $passwordLength = new \Zend_Validate_StringLength(array('min' => $minPassLength, 'encoding' => 'UTF-8'));
     $passwordLength->setMessage(__('Your password must be at least %1 characters.', $minPassLength), \Zend_Validate_StringLength::TOO_SHORT);
     $passwordChars = new \Zend_Validate_Regex('/[a-z].*\\d|\\d.*[a-z]/iu');
     $passwordChars->setMessage(__('Your password must include both numeric and alphabetic characters.'), \Zend_Validate_Regex::NOT_MATCH);
     $validator->addRule($passwordNotEmpty, 'password')->addRule($passwordLength, 'password')->addRule($passwordChars, 'password');
     if ($this->hasPasswordConfirmation()) {
         $passwordConfirmation = new \Zend_Validate_Identical($this->getPasswordConfirmation());
         $passwordConfirmation->setMessage(__('Your password confirmation must match your password.'), \Zend_Validate_Identical::NOT_SAME);
         $validator->addRule($passwordConfirmation, 'password');
     }
 }