/** * Validate the count value * * @param mixed $count * @return boolean */ private function validateCount($count) { $integerValidator = new IntegerValidator(); $integerValidator->setMessage("Count '%value%' ist keine Zahl", IntegerValidator::INVALID); if (!$integerValidator->isValid($count)) { $messages = array_values($integerValidator->getMessages()); $this->addError(new Error('count', $count, $messages)); return false; } // !! Achtung: Fehler im Zend Framework Version 1.11.0 !! // Der zu pruefende Wert muss groesser als der Parameter 'min' sein. // D.h. da der count Parameter mindestens den Wert 1 haben muss, // wird als 'min' 0 uebergeben $greaterThanValidator = new GreaterThanValidator(array('min' => 0)); $greaterThanValidator->setMessage("Count '%value%' ist nicht groesser als '%min%'", GreaterThanValidator::NOT_GREATER); if (!$greaterThanValidator->isValid($count)) { $messages = array_values($greaterThanValidator->getMessages()); $this->addError(new Error('count', $count, $messages)); return false; } $config = Registry::getConfig(); $configuredUuidLimit = intval($config->uuid->limit); $lessThanValidator = new LessThanValidator(array('max' => $configuredUuidLimit)); $lessThanValidator->setMessage("Count '%value%' ist groesser als das konfigurierte uuid limit '%max%'", LessThanValidator::NOT_LESS); if (!$lessThanValidator->isValid($count)) { $messages = array_values($lessThanValidator->getMessages()); $this->addError(new Error('count', $count, $messages)); return false; } return true; }
/** * @param string $limit * @return boolean */ private function validateLimit($limit) { $integerValidator = new IntegerValidator(); $integerValidator->setMessage("Limit '%value%' ist keine Zahl", IntegerValidator::INVALID); if (!$integerValidator->isValid($limit)) { $messages = array_values($integerValidator->getMessages()); $this->addError(new Error('limit', $limit, $messages)); return false; } $greaterThanValidator = new GreaterThanValidator(array('min' => 0)); $greaterThanValidator->setMessage("Limit '%value%' ist nicht groesser als '%min%'", GreaterThanValidator::NOT_GREATER); if (!$greaterThanValidator->isValid($limit)) { $messages = array_values($greaterThanValidator->getMessages()); $this->addError(new Error('limit', $limit, $messages)); return false; } return true; }
/** * Ensures that getMessages() returns expected default value * * @return void */ public function testGetMessages() { $validator = new Zend_Validate_GreaterThan(10); $this->assertEquals(array(), $validator->getMessages()); }
/** * @param string $value * @param string $field * @param array $limit * @return boolean */ private function validateInteger($value, $field, $limit = array()) { $integerValidator = new IntegerValidator(); $integerValidator->setMessage("'%value%' ist keine Zahl", IntegerValidator::INVALID); if (!$integerValidator->isValid($value)) { $messages = array_values($integerValidator->getMessages()); $this->addError(new Error($field, $value, $messages)); return false; } if (isset($limit['min'])) { $greaterThanValidator = new GreaterThanValidator($limit); $greaterThanValidator->setMessage("'%value%' ist nicht größer oder gleich '%min%'", GreaterThanValidator::NOT_GREATER); if (!$greaterThanValidator->isValid($value)) { $messages = array_values($greaterThanValidator->getMessages()); $this->addError(new Error($field, $value, $messages)); return false; } } if (isset($limit['max'])) { $lessThanValidator = new LessThanValidator($limit); $lessThanValidator->setMessage("'%value%' ist nicht kleiner oder gleich '%max%'", LessThanValidator::NOT_LESS); if (!$lessThanValidator->isValid($value)) { $messages = array_values($lessThanValidator->getMessages()); $this->addError(new Error($field, $value, $messages)); return false; } } return true; }
public function validatePriceRequired($value, $name = 'example', $tab = 'common', $error = false) { //locale en_US: decimals with points! (9.99) $validFloat = new Zend_Validate_Float(array('locale' => 'en_US')); $validGreaterThan = new Zend_Validate_GreaterThan(array('min' => 0)); if ($validFloat->isValid($value) && $validGreaterThan->isValid($value)) { return true; } $msg = Sanmax_MessageStack::getInstance($this->_namespace); $msg->addMessage($name, $validFloat->getMessages(), $tab); $msg->addMessage($name, $validGreaterThan->getMessages(), $tab); return false; }