Exemplo n.º 1
0
 public function isValid($value)
 {
     if (!parent::isValid($value)) {
         return false;
     }
     if (!is_null($this->_min) || !is_null($this->_max)) {
         $validators = array();
         if (!is_null($this->_min)) {
             $validator = new Zend_Validate_GreaterThan($this->_min);
             $validator->setMin($this->_min);
             $validators[] = $validator;
         }
         if (!is_null($this->_max)) {
             $validator = new Zend_Validate_LessThan($this->_max);
             $validator->setMax($this->_max);
             $validators[] = $validator;
         }
         foreach ($validators as $val) {
             if (!$val->isValid($value)) {
                 $messages = $val->getMessages();
                 if (!is_array($this->_messages)) {
                     $this->_messages = array();
                 }
                 $this->_messageVariables = array('max' => '_max', 'min' => '_min');
                 foreach ($messages as $key => $message) {
                     $this->_error($key, $value);
                 }
                 return false;
             }
         }
     }
     return true;
 }
 /**
  * Validate element value
  *
  * @param  array   $data
  * @param  mixed   $context
  * @return boolean
  */
 public function isValid($value, $context = array())
 {
     foreach ($this->_fieldValues as $fieldValue => $max) {
         if ($fieldValue == App_Util_Array::getItem($context, $this->getField())) {
             $this->_currentFieldValue = $fieldValue;
             parent::setMax($max);
             if (!parent::isValid($value)) {
                 return false;
             }
         }
     }
     return true;
 }
Exemplo n.º 3
0
 /**
  * Validate element value
  *
  * @param  array   $data
  * @param  mixed   $context
  * @return boolean
  */
 public function isValid($value, $context = array())
 {
     foreach ($this->_fields as $field => $fieldName) {
         if (is_numeric($field)) {
             $field = $fieldName;
         }
         if ($max = App_Util_Array::getItem($context, $field)) {
             $this->_currentField = $fieldName;
             parent::setMax($max);
             if (!parent::isValid($value)) {
                 return false;
             }
         }
     }
     return true;
 }