芝麻web文件管理V1.00
编辑当前文件:/home2/sdektunc/.trash/cepali/lib/pear/HTML/QuickForm/Rule/Compare.php
| // +----------------------------------------------------------------------+ // // $Id$ require_once 'HTML/QuickForm/Rule.php'; /** * Rule to compare two form fields * * The most common usage for this is to ensure that the password * confirmation field matches the password field * * @access public * @package HTML_QuickForm * @version $Revision$ */ class HTML_QuickForm_Rule_Compare extends HTML_QuickForm_Rule { /** * Possible operators to use * @var array * @access private */ var $_operators = array( 'eq' => '==', 'neq' => '!=', 'gt' => '>', 'gte' => '>=', 'lt' => '<', 'lte' => '<=' ); /** * Returns the operator to use for comparing the values * * @access private * @param string operator name * @return string operator to use for validation */ function _findOperator($name) { if (empty($name)) { return '=='; } elseif (isset($this->_operators[$name])) { return $this->_operators[$name]; } elseif (in_array($name, $this->_operators)) { return $name; } else { return '=='; } } function validate($values, $operator = null) { $operator = $this->_findOperator($operator); $a = $values[0]; $b = $values[1]; if ($operator == '==') { return $a == $b; } else if ($operator == '!=') { return $a != $b; } else { // One of: <= , >= , < , > . return eval('return ' . floatval($a) . $operator . floatval($b) . ';'); } } function getValidationScript($operator = null) { $operator = $this->_findOperator($operator); if ('==' != $operator && '!=' != $operator) { $check = "!(Number({jsVar}[0]) {$operator} Number({jsVar}[1]))"; } else { $check = "!({jsVar}[0] {$operator} {jsVar}[1])"; } return array('', "'' != {jsVar}[0] && {$check}"); } } ?>