Class.php 859 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. require_once 'Zend/Validate/Abstract.php';
  3. class Mooses_Mongodb_Mongo_Validate_Class extends Zend_Validate_Abstract
  4. {
  5. const CLASS_NOT_VALID = 'classNotValid';
  6. /**
  7. * @var array
  8. */
  9. protected $_messageTemplates = array(
  10. self::CLASS_NOT_VALID => "'%value%' is not a %class%"
  11. );
  12. /**
  13. * @var array
  14. */
  15. protected $_messageVariables = array(
  16. 'class' => '_class'
  17. );
  18. protected $_class = null;
  19. public function __construct($class)
  20. {
  21. $this->setClass($class);
  22. }
  23. public function setClass($class)
  24. {
  25. $this->_class = $class;
  26. }
  27. public function getClass()
  28. {
  29. return $this->_class;
  30. }
  31. public function isValid($value)
  32. {
  33. $this->_setValue($value);
  34. $class = $this->getClass();
  35. if (!($value instanceof $class)) {
  36. $this->_error(self::CLASS_NOT_VALID);
  37. return false;
  38. }
  39. return true;
  40. }
  41. }