X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/5517dbf1904795f710675847cd2a49f64009286c..914ba42493e01bc0f79053b0d3cd6348fcdfa0f8:/cookbooks/dmca/files/default/html/HTML/QuickForm/Rule/Range.php diff --git a/cookbooks/dmca/files/default/html/HTML/QuickForm/Rule/Range.php b/cookbooks/dmca/files/default/html/HTML/QuickForm/Rule/Range.php new file mode 100644 index 000000000..14118f530 --- /dev/null +++ b/cookbooks/dmca/files/default/html/HTML/QuickForm/Rule/Range.php @@ -0,0 +1,75 @@ + + * @copyright 2001-2011 The PHP Group + * @license http://www.php.net/license/3_01.txt PHP License 3.01 + * @version CVS: $Id$ + * @link http://pear.php.net/package/HTML_QuickForm + */ + +/** + * Abstract base class for QuickForm validation rules + */ +require_once 'HTML/QuickForm/Rule.php'; + +/** + * Checks that the length of value is within range + * + * @category HTML + * @package HTML_QuickForm + * @author Bertrand Mansion + * @version Release: 3.2.16 + * @since 3.2 + */ +class HTML_QuickForm_Rule_Range extends HTML_QuickForm_Rule +{ + /** + * Validates a value using a range comparison + * + * @param string $value Value to be checked + * @param mixed $options Int for length, array for range + * @access public + * @return boolean true if value is valid + */ + function validate($value, $options = null) + { + $length = strlen($value); + switch ($this->name) { + case 'minlength': return ($length >= $options); + case 'maxlength': return ($length <= $options); + default: return ($length >= $options[0] && $length <= $options[1]); + } + } // end func validate + + + function getValidationScript($options = null) + { + switch ($this->name) { + case 'minlength': + $test = '{jsVar}.length < '.$options; + break; + case 'maxlength': + $test = '{jsVar}.length > '.$options; + break; + default: + $test = '({jsVar}.length < '.$options[0].' || {jsVar}.length > '.$options[1].')'; + } + return array('', "{jsVar} != '' && {$test}"); + } // end func getValidationScript + +} // end class HTML_QuickForm_Rule_Range +?>