Ejemplo n.º 1
0
 public function validate(SxModule_Pageform $object)
 {
     $this->validateTextRequired($object->getName(), 'pf_name', 'title-tab', 'test foutmelding');
     $this->validateTextareaRequired($object->getContent(), 'pf_content', 'title-tab');
     if ($object->getMailoption() == 1) {
         $this->validateEmail($object->getMailto(), 'pf_mailto', 'options-tab');
     }
     if ($object->getTsl()->getConfirm() == 1) {
         $this->validateTextRequired($object->getTsl()->getConfirmSubject(), "pf_confirmsubject", "options-tab");
         $this->validateTextareaRequired($object->getTsl()->getConfirmSubject(), "pf_confirmcontent", "options-tab");
     }
     $i = 0;
     foreach ($object->getField() as $field) {
         $i++;
         $this->validateTextRequired($field->getKey(), "field" . $i, 'fields-tab');
     }
     $msgr = Sanmax_MessageStack::getInstance($this->_namespace);
     if (!$msgr->getNamespaceMessages()) {
         return true;
     }
     return false;
 }
Ejemplo n.º 2
0
 public function validate(SxModule_Pageform_Subscription $object, SxModule_Pageform $pageform)
 {
     $this->validatePageformId($object->getPageformId());
     $msgr = Sanmax_MessageStack::getInstance($this->_namespace);
     foreach ($pageform->getField() as $field) {
         foreach ($object->getMeta() as $meta) {
             if ($field->getId() == $meta->getFieldId()) {
                 if ($field->getFieldType() == 'text' && $field->getValidation() == 'numeric') {
                     $this->validateNumeric($meta->getValue(), $field->getTsl()->getName(), 'common');
                 } elseif ($field->getFieldType() == 'text' && $field->getValidation() == 'numeric-required') {
                     $this->validateNumeric($meta->getValue(), $field->getTsl()->getName(), 'common');
                 } elseif ($field->getFieldType() == 'text' && $field->getValidation() == 'date') {
                     $this->validateDate($meta->getValue(), $field->getTsl()->getName(), 'common');
                 } elseif ($field->getFieldType() == 'text' && $field->getValidation() == 'date-required') {
                     $this->validateDate($meta->getValue(), $field->getTsl()->getName(), 'common');
                 } elseif ($field->getFieldType() == 'select' && $field->getValidation() == 'boolean') {
                     $this->validateBoolean($meta->getValue(), $field->getTsl()->getName(), 'common');
                 } elseif ($field->getFieldType() == 'radio' && $field->getValidation() == 'required') {
                     $options = array();
                     foreach ($field->getMeta() as $option) {
                         $options[] = $option->getTsl()->getValue();
                     }
                     $this->validateInArray($meta->getValue(), $field->getTsl()->getName(), $options, 'common', array(Zend_Validate_InArray::NOT_IN_ARRAY => sprintf($this->getTmx()->_('error.option.required'), $field->getTsl()->getName())));
                 } elseif ($field->getFieldType() == 'checkbox' && $field->getValidation() == 'required') {
                     $val = null;
                     if ($meta->getValue() && is_array($meta->getValue())) {
                         $val = reset($meta->getValue());
                     }
                     $options = array();
                     foreach ($field->getMeta() as $option) {
                         $options[] = $option->getTsl()->getValue();
                     }
                     $this->validateInArray($val, $field->getTsl()->getName(), $options, 'common', array(Zend_Validate_InArray::NOT_IN_ARRAY => sprintf($this->getTmx()->_('error.option.required'), $field->getTsl()->getName())));
                 } elseif ($field->getValidation() == 'text') {
                     $this->validateText($meta->getValue(), $field->getTsl()->getName(), 'common', array(Zend_Validate_StringLength::INVALID => sprintf($this->getTmx()->_('error.required'), $field->getTsl()->getName()), Zend_Validate_StringLength::TOO_LONG => sprintf($this->getTmx()->_('error.required.long'), $field->getTsl()->getName()), Zend_Validate_StringLength::TOO_SHORT => sprintf($this->getTmx()->_('error.required.short'), $field->getTsl()->getName())));
                 } elseif ($field->getValidation() == 'text-required') {
                     $this->validateTextRequired($meta->getValue(), $field->getTsl()->getName(), 'common', array(Zend_Validate_StringLength::INVALID => sprintf($this->getTmx()->_('error.required'), $field->getTsl()->getName()), Zend_Validate_StringLength::TOO_LONG => sprintf($this->getTmx()->_('error.required.long'), $field->getTsl()->getName()), Zend_Validate_StringLength::TOO_SHORT => sprintf($this->getTmx()->_('error.required.short'), $field->getTsl()->getName())));
                 } elseif ($field->getValidation() == 'file-required') {
                     $this->validateTextRequired($meta->getValue(), $field->getTsl()->getName(), 'common', array(Zend_Validate_StringLength::INVALID => sprintf($this->getTmx()->_('error.required'), $field->getTsl()->getName())));
                 } elseif ($field->getValidation() == 'textarea-required') {
                     $this->validateTextareaRequired($meta->getValue(), $field->getTsl()->getName(), 'common', array(Zend_Validate_StringLength::INVALID => sprintf($this->getTmx()->_('error.required'), $field->getTsl()->getName()), Zend_Validate_StringLength::TOO_LONG => sprintf($this->getTmx()->_('error.required.long'), $field->getTsl()->getName()), Zend_Validate_StringLength::TOO_SHORT => sprintf($this->getTmx()->_('error.required.short'), $field->getTsl()->getName())));
                 } elseif ($field->getValidation() == 'email') {
                     if ($meta->getValue() != "") {
                         $this->validateEmail($meta->getValue(), $field->getTsl()->getName(), 'common');
                     }
                 } elseif ($field->getValidation() == 'email-required') {
                     if ($meta->getValue() == '') {
                         $this->validateTextRequired($meta->getValue(), $field->getTsl()->getName(), 'common', array(Zend_Validate_StringLength::INVALID => sprintf($this->getTmx()->_('error.required'), $field->getTsl()->getName()), Zend_Validate_StringLength::TOO_LONG => sprintf($this->getTmx()->_('error.required.long'), $field->getTsl()->getName()), Zend_Validate_StringLength::TOO_SHORT => sprintf($this->getTmx()->_('error.required.short'), $field->getTsl()->getName())));
                     } else {
                         $this->validateEmail($meta->getValue(), $field->getTsl()->getName(), 'common');
                     }
                 } elseif ($field->getValidation() == 'select-option') {
                     $possible_answers = array();
                     foreach ($field->getMeta() as $field_meta) {
                         $possible_answers[] = $field_meta->getTsl()->getValue();
                     }
                     $this->validateInArray($meta->getValue(), $field->getTsl()->getName(), $possible_answers, 'common', array(Zend_Validate_InArray::NOT_IN_ARRAY => sprintf($this->getTmx()->_('error.option.required'), $field->getTsl()->getName())));
                 } else {
                     #die('No validation!'); // TODO: validatie checken!
                 }
             }
         }
     }
     if (!$msgr->getNamespaceMessages()) {
         return true;
     }
     return false;
 }