From 88fc0f1e95222047641a55c9b26c4cae231f45ee Mon Sep 17 00:00:00 2001 From: romanb Date: Sun, 30 Sep 2007 07:26:43 +0000 Subject: [PATCH] added enum type validation --- lib/Doctrine/Validator.php | 66 ++++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 32 deletions(-) diff --git a/lib/Doctrine/Validator.php b/lib/Doctrine/Validator.php index 4afa11b27..ec7f41668 100644 --- a/lib/Doctrine/Validator.php +++ b/lib/Doctrine/Validator.php @@ -254,38 +254,40 @@ class Doctrine_Validator extends Doctrine_Object * @param string $type * @return boolean */ - public static function isValidType($var, $type) - { - if ($var === null) { - return true; - } else if (is_object($var)) { - return $type == 'object'; - } - - switch ($type) { - case 'float': - case 'double': - return (String)$var == strval(floatval($var)); - case 'integer': - return (String)$var == strval(intval($var)); - case 'string': - return is_string($var) || is_int($var) || is_float($var); - case 'array': - return is_array($var); - case 'object': - return is_object($var); - case 'boolean': - return is_bool($var); - case 'timestamp': - // todo: validate the timestamp is in YYYY-MM-DD HH:MM:SS format - return true; - case 'date': - $validator = self::getValidator('date'); - return $validator->validate($var); - default: - return false; - } - } + public static function isValidType($var, $type) + { + if ($var === null) { + return true; + } else if (is_object($var)) { + return $type == 'object'; + } + + switch ($type) { + case 'float': + case 'double': + return (String)$var == strval(floatval($var)); + case 'integer': + return (String)$var == strval(intval($var)); + case 'string': + return is_string($var) || is_int($var) || is_float($var); + case 'array': + return is_array($var); + case 'object': + return is_object($var); + case 'boolean': + return is_bool($var); + case 'timestamp': + // todo: validate the timestamp is in YYYY-MM-DD HH:MM:SS format + return true; + case 'date': + $validator = self::getValidator('date'); + return $validator->validate($var); + case 'enum': + return is_string($var) || is_int($var); + default: + return false; + } + } /**