/**
  * Return a configured input filter to be able to validate and
  * filter the data.
  *
  * @return InputFilter
  */
 public function getInputFilter()
 {
     $inputFilter = new InputFilter();
     $factory = new InputFactory();
     $inputFilter->add($factory->createInput(array('name' => 'user_id', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim'), array('name' => 'Int')), 'validators' => array(array('name' => 'NotEmpty'), array('name' => 'Digits'), array('name' => 'Zend\\Validator\\Db\\RecordExists', 'options' => array('table' => 'users', 'field' => 'id', 'adapter' => $this->adapter))))));
     return $inputFilter;
 }
示例#2
0
 public function addInputFilter()
 {
     $inputFilter = new InputFilter\InputFilter();
     // File Input
     $title = sprintf("%.0f ", microtime(true) * 20000);
     $title = str_replace(' ', '', $title);
     //$title=(float) microtime(true)*20000;
     $fileInput = new InputFilter\FileInput('seriecode');
     $fileInput->setRequired(true);
     // You only need to define validators and filters
     // as if only one file was being uploaded. All files
     // will be run through the same validators and filters
     // automatically.
     $fileInput->getValidatorChain()->attachByName('filesize', array('max' => 500000000))->attachByName('filemimetype', array('mimeType' => 'video/mp4'));
     // All files will be renamed, i.e.:
     //   ./data/tmpuploads/avatar_4b3403665fea6.png,
     //   ./data/tmpuploads/avatar_5c45147660fb7.png
     $name = md5(date('ymd'));
     if (!file_exists('temp/data/tmpuploads/videos/' . $name)) {
         mkdir('temp/data/tmpuploads/videos/' . $name, 0777, true);
     }
     $fileInput->getFilterChain()->attachByName('filerenameupload', array('target' => './temp/data/tmpuploads/videos/' . $name . '/', 'randomize' => true));
     $inputFilter->add($fileInput);
     $this->setInputFilter($inputFilter);
 }
 public function getLeaveFilter()
 {
     $filter = new InputFilter();
     $filter->add(array('name' => 'leaveType', 'required' => true));
     $filter->add(array('name' => 'description', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'StringLength', 'max' => 500, 'min' => 1, 'encoding' => 'UTF-8'))));
     return $filter;
 }
示例#4
0
 protected function initFilters()
 {
     $filter = new InputFilter();
     $filter->add(['name' => 'startDate', 'required' => true, 'validators' => [['name' => 'date']], 'filters' => [['name' => 'StripTags'], ['name' => 'StringTrim']]]);
     $filter->add(['name' => 'expirationDate', 'required' => true, 'validators' => [['name' => 'date']], 'filters' => [['name' => 'StripTags'], ['name' => 'StringTrim']]]);
     $this->setInputFilter($filter);
 }
 public function getInputFilter()
 {
     if (!$this->inputFilter) {
         $inputFilter = new InputFilter();
         $factory = new InputFactory();
         $inputFilter->add($factory->createInput(['name' => 'item_id', 'required' => true, 'filters' => array(array("name" => "Int")), 'validators' => array(array('name' => 'Callback', 'options' => array('messages' => array(\Zend\Validator\Callback::INVALID_VALUE => 'It was not possible to find the package to change the participant for.'), 'callback' => function ($value, $context = array()) {
             # check if order with the id of $value exists
             if (!is_numeric($value)) {
                 return false;
             }
             $em = $this->getServiceLocator()->get('Doctrine\\ORM\\EntityManager');
             $item = $em->getRepository("ErsBase\\Entity\\Item")->findOneBy(array('id' => $value));
             if ($item) {
                 return true;
             }
             return false;
         })))]));
         $inputFilter->add($factory->createInput(['name' => 'user_id', 'required' => true, 'filters' => array(array("name" => "Int")), 'validators' => array(array('name' => 'Callback', 'options' => array('messages' => array(\Zend\Validator\Callback::INVALID_VALUE => 'It was not possible to find the user that should be set as participant.'), 'callback' => function ($value, $context = array()) {
             # check if user with the id of $value exists
             if (!is_numeric($value)) {
                 return false;
             }
             $em = $this->getServiceLocator()->get('Doctrine\\ORM\\EntityManager');
             $user = $em->getRepository("ErsBase\\Entity\\User")->findOneBy(array('id' => $value));
             if ($user) {
                 return true;
             }
             return false;
         })))]));
         $inputFilter->add($factory->createInput(['name' => 'comment', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'NotEmpty'))]));
         $this->inputFilter = $inputFilter;
     }
     return $this->inputFilter;
 }
示例#6
0
 public function addInputFilter()
 {
     $inputFilter = new InputFilter();
     $inputFilter->add(array('name' => 'name', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 3, 'max' => 20)))));
     $inputFilter->add(array('name' => 'desc', 'required' => false, 'validators' => array(array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'max' => 500)))));
     $this->setInputFilter($inputFilter);
 }
 public function addInputFilter()
 {
     $inputFilter = new InputFilter\InputFilter();
     // File Input
     //$title=microtime(true)*20000;
     $fileInput = new InputFilter\FileInput('imagefile');
     $fileInput->setRequired(true);
     // You only need to define validators and filters
     // as if only one file was being uploaded. All files
     // will be run through the same validators and filters
     // automatically.
     //$validator = new \Zend\Validator\File\MimeType('image/gif,image/jpg,image/png');
     $fileInput->getValidatorChain()->attachByName('filesize', array('max' => 5480000))->attachByName('filemimetype', array('mimeType' => 'image/png'));
     // All files will be renamed, i.e.:
     //   ./data/tmpuploads/avatar_4b3403665fea6.png,
     //   ./data/tmpuploads/avatar_5c45147660fb7.png
     /* $fileInput->getFilterChain()->attachByName(
            'filerenameupload',
            array(
                'target'    => './data/tmpuploads/123/',
                'randomize' => true,
            )
        );*/
     $name = 1;
     if (!file_exists('eclip.tv/data/uploads/user/' . $name)) {
         mkdir('eclip.tv/data/uploads/user/' . $name, 0777, true);
     }
     $fileInput->getFilterChain()->attach(new \Zend\Filter\File\Rename("eclip.tv/data/uploads/user/" . $name . '/' . $title . ".png"));
     $inputFilter->add($fileInput);
     $this->setInputFilter($inputFilter);
 }
示例#8
0
 protected function initFilters()
 {
     $filter = new InputFilter();
     $filter->add(['name' => 'lidnr', 'required' => true, 'validators' => [['name' => 'not_empty'], ['name' => 'digits']]]);
     $filter->add(['name' => 'email', 'required' => true, 'validators' => [['name' => 'not_empty'], ['name' => 'email_address']]]);
     $this->setInputFilter($filter);
 }
示例#9
0
 public function getInputFilter()
 {
     if (!$this->inputFilter) {
         $inputFilter = new InputFilter();
         $factory = new InputFactory();
         /*
                     $inputFilter->add($factory->createInput(array(
                         'name'     => 'name',
                         'required' => true,
                         'filters'  => array(
                             array('name' => 'StripTags'),
                             array('name' => 'StringTrim'),
                         ),
                         'validators' => array(
                             array(
                                 'name'    => 'StringLength',
                                 'options' => array(
                                     'encoding' => 'UTF-8',
                                     'min'      => 1,
                                     'max'      => 100,
                                 ),
                             ),
                         ),
                     )));
         */
         $inputFilter->add($factory->createInput(array('name' => 'min_start_range', 'required' => true)));
         $inputFilter->add($factory->createInput(array('name' => 'max_start_range', 'required' => true)));
         $this->inputFilter = $inputFilter;
     }
     return $this->inputFilter;
 }
示例#10
0
 public function loginAction()
 {
     $form = new LoginForm('', false, $this->getServiceLocator());
     $request = $this->getRequest();
     if ($request->isPost()) {
         $inputFilter = new InputFilter();
         $factory = new InputFactory();
         $inputFilter->add($factory->createInput(array('name' => 'username', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'NotEmpty')))));
         $inputFilter->add($factory->createInput(array('name' => 'password', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'NotEmpty')))));
         $form->setInputFilter($inputFilter);
         $form->setData($request->getPost());
         if ($form->isValid()) {
             //check authentication...
             $this->getAuthService()->getAdapter()->setIdentity('' . $request->getPost('username'))->setCredential('' . $request->getPost('password'));
             $result = $this->getAuthService()->authenticate();
             foreach ($result->getMessages() as $message) {
                 //save message temporary into flashmessenger
                 $this->flashmessenger()->addMessage($message);
             }
             if ($result->isValid()) {
                 $this->getAuthService()->getStorage()->write($this->getAuthService()->getAdapter()->getResultRowObject(null));
                 return $this->redirect()->toRoute('bhome');
             }
         }
     }
     return array('form' => $form);
 }
示例#11
0
 /**
  * @return InputFilterInterface
  */
 public function getInputFilter()
 {
     if (!$this->inputFilter) {
         $searchParam = new Input('search_param');
         $searchParam->setAllowEmpty(false);
         $searchParam->setRequired(true);
         $radius = new Input('radius');
         $radius->setAllowEmpty(true);
         $radius->setRequired(false);
         $city = new Input('city');
         $city->setAllowEmpty(true);
         $city->setRequired(false);
         $state = new Input('state');
         $state->setAllowEmpty(true);
         $state->setRequired(false);
         $postalCode = new Input('postal_code');
         $postalCode->setAllowEmpty(true);
         $postalCode->setRequired(false);
         //			$contactEmail = new Input('contact_email');
         //			$contactEmail	->setRequired(false);
         //			$contactEmail	->setAllowEmpty(true)
         //							->getValidatorChain()
         //							->addValidator(new \Zend\Validator\EmailAddress());
         $inputFilter = new InputFilter();
         $inputFilter->add($searchParam)->add($radius)->add($city)->add($state)->add($postalCode);
         $this->inputFilter = $inputFilter;
     }
     return $this->inputFilter;
 }
示例#12
0
 /**
  * Définition des filtres et des validateurs
  * @return \Zend\InputFilter\InputFilter
  */
 private function createInputFilter()
 {
     $inputFilter = new InputFilter();
     $inputFilter->add(array('name' => 'libelle', 'required' => true, 'filters' => array(array('name' => 'StringTrim')), 'validators' => array(array('name' => 'StringLength', 'options' => array('max' => 45)))));
     $inputFilter->add(array('name' => 'nblits', 'required' => true, 'filters' => array(array('name' => 'StringTrim'), array('name' => 'StripTags')), 'validators' => array(array('name' => 'Int'), array('name' => 'GreaterThan', 'options' => array('min' => 0)))));
     return $inputFilter;
 }
示例#13
0
 function __construct()
 {
     parent::__construct('console_address');
     $element_id = new Element\Hidden('id');
     $element_id->setValue('');
     $this->add($element_id);
     $this->add(array('name' => 'username', 'type' => 'Text'));
     $this->add(array('name' => 'domain', 'type' => 'Text'));
     $this->add(array('name' => 'nickname', 'type' => 'Text'));
     $element_sex = new Element\Select('sex');
     $element_sex->setValueOptions(array(self::ADDRESS_SEX_BOY => '男性', self::ADDRESS_SEX_GIRL => '女性'));
     $this->add($element_sex);
     $this->add(array('name' => 'submit', 'type' => 'Submit'));
     /**
      * Setting up inputFilter
      */
     $input_id = new Input('id');
     $input_id->setRequired(false)->getValidatorChain()->attach(new \Zend\Validator\StringLength(array('max' => 50)))->attach(new \Zend\Validator\Digits());
     $input_username = new Input('username');
     $input_username->setRequired(true)->getValidatorChain()->attach(new \Zend\Validator\StringLength(array('max' => 18)))->attach(new \Zend\Validator\Digits());
     $input_filter = new InputFilter();
     $input_filter->add($input_id);
     $input_filter->add($input_username);
     $this->setInputFilter($input_filter);
 }
示例#14
0
 public function getInputFilter()
 {
     $inputFilter = new InputFilter();
     $inputFilter->add(array('name' => 'email', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'NotEmpty', 'break_chain_on_failure' => true, 'options' => array('messages' => array(\Zend\Validator\NotEmpty::IS_EMPTY => sprintf('%sを入力してください。', 'メールアドレス')))), array('name' => 'StringLength', 'break_chain_on_failure' => true, 'options' => array('encoding' => 'UTF-8', 'min' => 0, 'max' => 100, 'message' => array(\Zend\Validator\StringLength::TOO_LONG => sprintf('%sは%s文字以内で入力してください。', 'メールアドレス', '100')))), array('name' => 'EmailAddress', 'options' => array('message' => array(\Zend\Validator\EmailAddress::INVALID_FORMAT => sprintf('%sは有効な形式で入力してください。', 'メールアドレス')))))));
     $inputFilter->add(array('name' => 'password', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'NotEmpty', 'break_chain_on_failure' => true, 'options' => array('messages' => array(\Zend\Validator\NotEmpty::IS_EMPTY => sprintf('%sを入力してください。', 'パスワード'))), 'name' => 'StringLength', 'break_chain_on_failure' => true, 'options' => array('encoding' => 'UTF-8', 'min' => 6, 'messages' => array(\Zend\Validator\StringLength::TOO_SHORT => sprintf('%sを最低%s文字で入力してください。', 'パスワード', '6')))))));
     return $inputFilter;
 }
示例#15
0
 /**
  * (non-PHPdoc)
  *
  * @see \Zend\InputFilter\InputFilterAwareInterface::getInputFilter()
  *
  */
 public function getInputFilter()
 {
     if (!$this->inputFilter) {
         $inputFilter = new InputFilter();
         $factory = new InputFactory();
         // Transaction Date
         $inputFilter->add($factory->createInput(array('name' => 'transaction_date', 'required' => true, 'validators' => array(array("name" => "regex", 'options' => array('pattern' => ClassicValidator::getDateRegex(), 'messages' => array(Regex::INVALID => "Date format is invalid.", Regex::NOT_MATCH => "Date format is invalid.", Regex::ERROROUS => "Date format is invalid.")))))));
         // Currency
         $inputFilter->add($factory->createInput(array('name' => 'currency', 'required' => true, 'validators' => array(array('name' => 'Digits', 'options' => array('min' => 5, 'max' => 1000, 'messages' => array(Digits::NOT_DIGITS => 'Can contain only digits.')))))));
         // Category
         $inputFilter->add($factory->createInput(array('name' => 'category', 'required' => true, 'validators' => array(array('name' => 'Int', 'options' => array('min' => 1, 'max' => 1000))))));
         // Bank Account
         $inputFilter->add($factory->createInput(array('name' => 'bank_account', 'required' => true, 'validators' => array(array('name' => 'Int', 'options' => array('min' => 1, 'max' => 1000))))));
         // Supplier
         $inputFilter->add($factory->createInput(array('name' => 'supplier', 'required' => true, 'validators' => array(array('name' => 'Int', 'options' => array('min' => 1, 'max' => 1000))))));
         // Purpose
         $inputFilter->add($factory->createInput(array('name' => 'purpose', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 1, 'max' => 3500))))));
         // Entered For
         $inputFilter->add($factory->createInput(array('name' => 'entered_for', 'required' => true, 'validators' => array(array('name' => 'Int', 'options' => array('min' => 1, 'max' => 1000))))));
         // Global Cost
         $inputFilter->add($factory->createInput(array('name' => 'type', 'validators' => array(array('name' => 'Int', 'options' => array('min' => 1, 'max' => 1000))))));
         $mainFilter = new InputFilter();
         $mainFilter->add($inputFilter, 'fsOne');
         $this->inputFilter = $mainFilter;
     }
     return $this->inputFilter;
 }
示例#16
0
 protected function getModel()
 {
     // Dependências
     $form = new Form();
     $inputFilter = new InputFilter();
     $formSearch = new Form();
     $inputFilterSearch = new InputFilter();
     $persistence = $this->getMock('Balance\\Model\\Persistence\\PersistenceInterface');
     // Parâmetro
     $form->add(new Text('id'));
     $inputFilter->add(new Input('id'));
     // Parâmetro
     $form->add(new Text('foo'));
     $inputFilter->add(new Input('foo'));
     // Pesquisa: Palavras Chave
     $formSearch->add(new Text('keywords'));
     $inputFilterSearch->add(new Input('keywords'));
     // Configurações
     $form->setInputFilter($inputFilter);
     $formSearch->setInputFilter($inputFilterSearch);
     // Inicialização
     $model = new Model($persistence);
     // Formulários
     $model->setForm($form)->setFormSearch($formSearch);
     // Apresentação
     return $model;
 }
示例#17
0
 public function getInputFilter()
 {
     if (!$this->inputFilter) {
         $inputFilter = new InputFilter();
         $intFilters = array('name' => 'Int');
         $textFilters = array(array('name' => 'StripTags'), array('name' => 'StringTrim'));
         // StripTags is used to remove unwanted HTML & StringStrim is used to remove unnecessary white spaces
         foreach ($this->fields as $field => $data) {
             $filters = $validators = null;
             $required = isset($data['form']['required']) ? $data['form']['required'] : false;
             $element = array('name' => $field, 'required' => $required);
             if (isset($data['max'])) {
                 $textValidator = array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 1, 'max' => $data['max']));
             } else {
                 $textValidator = array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 1));
             }
             switch ($data['type']) {
                 case 'int':
                     $element['filters'] = array($intFilters);
                     break;
                 case 'text':
                     $element['filters'] = $textFilters;
                     $element['validators'] = array($textValidator);
                     break;
             }
             $inputFilter->add($element);
         }
         $this->inputFilter = $inputFilter;
     }
     return $this->inputFilter;
 }
示例#18
0
 public function validadores()
 {
     $inputFilter = new InputFilter();
     $inputFilter->add(array('name' => 'va_contrasena', 'required' => true, 'filters' => array(array('name' => 'StringTrim')), 'validators' => array(array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 6, 'max' => 128)))));
     $inputFilter->add(array('name' => 'verificar_contrasena', 'required' => true, 'filters' => array(array('name' => 'StringTrim')), 'validators' => array(array('name' => 'StringLength', 'options' => array('min' => 6)), array('name' => 'identical', 'options' => array('token' => 'va_contrasena')))));
     return $inputFilter;
 }
示例#19
0
 protected function initFilters()
 {
     $filter = new InputFilter();
     $filter->add(['name' => 'login', 'required' => true, 'validators' => [['name' => 'not_empty']]]);
     $filter->add(['name' => 'password', 'required' => true, 'validators' => [['name' => 'not_empty'], ['name' => 'string_length', 'options' => ['min' => 8]]]]);
     $this->setInputFilter($filter);
 }
示例#20
0
 public function uploadImageAction()
 {
     $this->checkAuth();
     $request = $this->getRequest();
     if ($request->isPost()) {
         // File upload input
         $file = new FileInput('avatar');
         // Special File Input type
         $file->getValidatorChain()->attach(new Validator\File\UploadFile());
         $file->getFilterChain()->attach(new Filter\File\RenameUpload(array('target' => './public/files/users/avatar/origin/', 'use_upload_name' => true, 'randomize' => true)));
         // Merge $_POST and $_FILES data together
         $request = new Request();
         $postData = array_merge_recursive($request->getPost()->toArray(), $request->getFiles()->toArray());
         $inputFilter = new InputFilter();
         $inputFilter->add($file)->setData($postData);
         if ($inputFilter->isValid()) {
             // FileInput validators are run, but not the filters...
             $data = $inputFilter->getValues();
             // This is when the FileInput filters are run.
             $avatar = basename($data['avatar']['tmp_name']);
             $this->databaseService->updateAvatar($this->user->id, $avatar);
             $this->user->avatar = $avatar;
         } else {
             // error
         }
     }
     return $this->redirect()->toRoute('profile');
 }
 public function __construct()
 {
     //Hidden
     $this->add(array('name' => 'hiddenField', 'required' => true));
     //Fieldset 1 Input filter
     $fs1InputFilter = new InputFilter();
     //Text
     $fs1InputFilter->add(array('name' => 'text', 'required' => true, 'validators' => array(array('name' => 'string_length', 'options' => array('min' => 5)))));
     //Password
     $fs1InputFilter->add(array('name' => 'password', 'required' => true, 'validators' => array(array('name' => 'string_length', 'options' => array('min' => 5, 'max' => 8)))));
     //Textarea
     $fs1InputFilter->add(array('name' => 'textarea', 'required' => false, 'validators' => array(array('name' => 'string_length', 'options' => array('min' => 5)))));
     $this->add($fs1InputFilter, 'fsOne');
     //Fieldset 2 Input filter
     $fs2InputFilter = new InputFilter();
     //Multicheckbox
     $fs2InputFilter->add(array('name' => 'multiCheckbox', 'required' => false));
     //Multicheckbox inline
     $fs2InputFilter->add(array('name' => 'multiCheckboxInline', 'required' => false));
     $this->add($fs2InputFilter, 'fsTwo');
     //Elements outside of any fieldsets (i.e. directly on the form)
     //Select
     $this->add(array('name' => 'select', 'required' => true));
     //Multi Select
     $this->add(array('name' => 'multiSelect', 'required' => true));
     //File
     $this->add(array('name' => 'file', 'required' => false, 'validators' => array(array('name' => 'string_length', 'options' => array('max' => 0)))));
     //Text append / prepend
     $this->add(array('name' => 'textAp', 'required' => false));
     //Icon append / prepend
     $this->add(array('name' => 'iconAp', 'required' => false));
 }
示例#22
0
 /**
  * @return InputFilter
  */
 public function getInputFilter()
 {
     $inputFilter = new InputFilter();
     $factory = new InputFactory();
     $inputFilter->add($factory->createInput(['name' => 'userId', 'required' => true, 'filters' => [new \Zend\Filter\StripTags(), new \Zend\Filter\StringTrim()]]));
     return $inputFilter;
 }
示例#23
0
 public function getInputFilter()
 {
     if (!$this->inputFilter) {
         $inputFilter = new InputFilter();
         // Ou créer une validation de ces données propre au affaire
         $intFilters = array('name' => 'Int');
         // StripTags is used to remove unwanted HTML & StringStrim is used to remove unnecessary white spaces
         $textFilters = array(array('name' => 'StripTags'), array('name' => 'StringTrim'));
         foreach ($this->fields as $field => $data) {
             $filters = $validators = null;
             $required = isset($data['form']['required']) ? $data['form']['required'] : false;
             $element = array('name' => $field, 'required' => $required);
             if (isset($data['max'])) {
                 $textValidator = array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 1, 'max' => $data['max']));
             } else {
                 $textValidator = array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 1));
             }
             switch ($data['type']) {
                 case 'int':
                     $element['filters'] = array($intFilters);
                     break;
                 case 'text':
                     $element['filters'] = $textFilters;
                     $element['validators'] = array($textValidator);
                     break;
                 case 'float':
                     $element['validators'] = array(array('name' => 'Regex', 'options' => array('pattern' => '/^[0-9]+([\\.,][0-9]{1,2}){0,1}$/', 'messages' => array('regexNotMatch' => 'Vous devez entrer un décimal valide (10, 10.0, 5,07...)'))));
                     break;
             }
             $inputFilter->add($element);
         }
         $this->inputFilter = $inputFilter;
     }
     return $this->inputFilter;
 }
 public function getInputFilter()
 {
     if (is_null($this->filter)) {
         $trackingIdValidator = new StringLength(36);
         $regexValidator = new Regex('/^[a-zA-Z0-9_-]+$/');
         $trackingIdInput = new Input('trackingId');
         $trackingIdInput->allowEmpty();
         $trackingIdInput->setRequired(false);
         $trackingIdInput->getValidatorChain()->attach($trackingIdValidator)->attach($regexValidator);
         $inArrayValidator = new InArray();
         $inArrayValidator->setHaystack(array_keys($this->locations));
         $originInput = new Input('origin');
         $originInput->getValidatorChain()->attach($inArrayValidator);
         $notSameValidator = new Callback(array('callback' => function ($value, $context = null) {
             if ($context) {
                 return $value !== $context['origin'];
             }
             return true;
         }, 'messages' => array(Callback::INVALID_VALUE => 'Origin and Destination are the same')));
         $destinationInput = new Input('final_destination');
         $destinationInput->getValidatorChain()->attach($inArrayValidator)->attach($notSameValidator);
         $filter = new InputFilter();
         $filter->add($trackingIdInput)->add($originInput)->add($destinationInput);
         $this->filter = $filter;
     }
     return $this->filter;
 }
示例#25
0
 protected function initFilters()
 {
     $filter = new InputFilter();
     $filter->add(array('name' => 'password', 'required' => true, 'validators' => array(array('name' => 'not_empty'), array('name' => 'string_length', 'options' => array('min' => 8)))));
     $filter->add(array('name' => 'password_verify', 'required' => true, 'validators' => array(array('name' => 'not_empty'), array('name' => 'string_length', 'options' => array('min' => 8)), array('name' => 'identical', 'options' => array('token' => 'password')))));
     $this->setInputFilter($filter);
 }
示例#26
0
 public function addAction()
 {
     $filter = new InputFilter();
     $form = new RatingForm($this->getServiceLocator()->get('Admin\\Model\\ServiceProviderTable'), $this->getServiceLocator()->get('Admin\\Model\\ServicesTable'));
     $ratingTypes = $this->getServiceLocator()->get('ADmin\\Model\\RatingTypeTable')->fetchAll(false);
     $fields = array();
     foreach ($ratingTypes as $ratingType) {
         $form->add(array('type' => 'Zend\\Form\\Element\\Radio', 'name' => 'rating[' . $ratingType->id . ']', 'options' => array('label' => $ratingType->rating_type, 'value_options' => array('1' => '', '2' => '', '3' => '', '4' => '', '5' => '')), 'attributes' => array('class' => 'star')));
         // adding validation rule at run time
         $filter->add(array('name' => 'rating[' . $ratingType->id . ']', 'required' => false));
         $fields[] = $ratingType->id;
     }
     $form->get('submit')->setValue('Add');
     $request = $this->getRequest();
     if ($request->isPost()) {
         $rating = new Ratings();
         $form->setInputFilter($filter);
         $form->setData($request->getPost());
         //print_r($request->getPost()); exit;
         if ($form->isValid()) {
             $rating->exchangeArray($form->getData());
             if ($this->getRatingTable()->saveRating($rating, $request->getPost('rating'), $this->getLoggedinUser())) {
                 $this->flashMessenger()->addSuccessMessage('Rating added successfully..!!');
             } else {
                 $this->flashMessenger()->addErrorMessage('No rating added..!!');
             }
             // Redirect to list of pages
             return $this->redirect()->toRoute('admin/ratings');
         } else {
             $this->errors = $form->getMessages();
         }
     }
     return array('form' => $form, 'errors' => $this->errors, 'fields' => $fields);
 }
示例#27
0
 public function getInputFilter()
 {
     if (!$this->inputFilter) {
         $inputFilter = new InputFilter();
         $factory = new InputFactory();
         $inputFilter->add($factory->createInput(array('name' => 'title', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 5, 'max' => 50))))));
         /*
         		$inputFilter->add($factory->createInput(array(
                         'name'     => 'short_note',
                         'required' => true,
                         'filters'  => array(
                             array('name' => 'StripTags'),
                             array('name' => 'StringTrim'),
                         ),
                         'validators' => array(
                             array(
                                 'name'    => 'StringLength',
                                 'options' => array(
                                     'encoding' => 'UTF-8',
                                     'min'      => 5,
                                     'max'      => 500,
                                 ),
                             ),
                         ),
                     )));
         */
         $inputFilter->add($factory->createInput(array('name' => 'field_image', 'required' => false)));
         $inputFilter->add($factory->createInput(array('name' => 'external_link', 'required' => true)));
         $this->inputFilter = $inputFilter;
     }
     return $this->inputFilter;
 }
示例#28
0
 public function validadores()
 {
     $inputFilter = new InputFilter();
     $inputFilter->add(array('name' => 'va_email', 'required' => true, 'validators' => array(array('name' => 'EmailAddress'))));
     $inputFilter->add(array('name' => 'va_contrasena', 'required' => true));
     return $inputFilter;
 }
示例#29
0
 public static function getInputFilter()
 {
     $inputFilter = new InputFilter();
     $factory = new InputFactory();
     $inputFilter->add($factory->createInput(array('name' => 'status', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'StringLength', 'options' => array('encoding' => 'UTF-8', 'min' => 1, 'max' => 65535))))));
     return $inputFilter;
 }
 public function getInputFilter()
 {
     if (!$this->inputFilter) {
         $inputFilter = new InputFilter();
         /* @campo       id
          * @filters     Int
          */
         $inputFilter->add(array('name' => 'id', 'required' => false, 'filters' => array(array('name' => 'Int'))));
         /* @campo       fk_categoria
          * @filters     StripTags
          * @filters     StringTrim
          * @validators  NotEmpty
          * @validators  Digits
          */
         $inputFilter->add(array('name' => 'fk_categoria', 'required' => true, 'allow_empty' => false, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'NotEmpty', 'break_chain_on_failure' => true, 'options' => array('messages' => array('isEmpty' => 'Campo obrigatório!'))), array('name' => 'Digits', 'break_chain_on_failure' => true, 'options' => array('messages' => array('notDigits' => 'Campo só aceita numeros'))))));
         /* @campo       nome
          * @filters     StripTags
          * @filters     StringTrim
          * @validators  NotEmpty
          * @validators  StringLength
          * @validators  Validador\TesteUnicidade
          */
         $inputFilter->add(array('name' => 'nome', 'required' => true, 'filters' => array(array('name' => 'StripTags'), array('name' => 'StringTrim')), 'validators' => array(array('name' => 'NotEmpty', 'break_chain_on_failure' => true, 'options' => array('messages' => array('isEmpty' => 'Campo obrigatório!'))), array('name' => 'StringLength', 'break_chain_on_failure' => true, 'options' => array('encoding' => 'UTF-8', 'min' => 3, 'max' => 40, 'messages' => array('stringLengthTooShort' => 'O valor digitado deve possuir no minimo %min% caractere', 'stringLengthTooLong' => 'O valor digitado deve possuir no maximo %max% caractere'))), array('name' => 'Validador\\TesteUnicidade', 'options' => array('adapter' => $this->dbAdapter, 'tabela' => 'despesas_subcategorias', 'campo' => 'nome', 'camposExtra' => array('fk_categoria'), 'negar' => array('id')), 'break_chain_on_failure' => true))));
         $this->inputFilter = $inputFilter;
     }
     return $this->inputFilter;
 }