Example #1
0
 public function validate(ValidationItem $validationItem)
 {
     if ($validationItem->getElement() instanceof Validatable) {
         $validationItem->getElement()->checkValidity($validationItem);
     } else {
         throw new Exception('Element is not validatable. It must be an instance of UForm\\Form\\Element\\Validatable');
     }
 }
Example #2
0
 /**
  * Adds a validationItem to the internal validation list
  * @param ValidationItem $validation
  */
 public function addValidation(ValidationItem $validation)
 {
     $el = $validation->getElement();
     $name = $el->getName();
     $internalName = $el->getInternalName(true);
     if (null !== $name) {
         $this->validationsName[$el->getName(true, true)] = $internalName;
     }
     $this->validationsInternalName[$internalName] = $validation;
 }
Example #3
0
 /**
  * @inheritdoc
  */
 public function validate(ValidationItem $validationItem)
 {
     $value1 = $validationItem->getValue();
     $value2 = $validationItem->findValue($this->sameElement);
     if ($value2 !== $value1) {
         $message = new Validation\Message('Fields %_tested-field_% and %_compare-field_% have different values', ['tested-field' => $validationItem->getElement()->getName(true, true), 'compare-field' => $this->sameElement], self::DIFFERENT);
         $validationItem->appendMessage($message);
         $validationItem->setInvalid();
     }
 }
Example #4
0
 /**
  * @inheritdoc
  */
 public function validate(ValidationItem $validationItem)
 {
     $value = $validationItem->getLocalData()->getDataCopy();
     $element = $validationItem->getElement();
     if ($element instanceof Requirable) {
         $valid = $element->isDefined($validationItem);
     } else {
         $valid = is_array($value) && isset($value[$validationItem->getLocalName()]) && null !== $value[$validationItem->getLocalName()];
     }
     if (!$valid) {
         $message = new Validation\Message('Field is required', [], self::REQUIRED);
         $validationItem->appendMessage($message);
         $validationItem->setInvalid();
     }
     return true;
 }
Example #5
0
 public function __construct(ValidationItem $inputValidation, ValidationItem $ouputValidation)
 {
     parent::__construct($inputValidation->getLocalData(), $inputValidation->getElement(), $inputValidation->getFormContext());
     $this->bridgeOutput = $ouputValidation;
 }