2012-03-02 19:27:16 +02:00
|
|
|
|
<?php
|
|
|
|
|
/*-------------------------------------------------------
|
|
|
|
|
*
|
|
|
|
|
* LiveStreet Engine Social Networking
|
|
|
|
|
* Copyright © 2008 Mzhelskiy Maxim
|
|
|
|
|
*
|
|
|
|
|
*--------------------------------------------------------
|
|
|
|
|
*
|
|
|
|
|
* Official site: www.livestreet.ru
|
|
|
|
|
* Contact e-mail: rus.engine@gmail.com
|
|
|
|
|
*
|
|
|
|
|
* GNU General Public License, version 2:
|
|
|
|
|
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
|
|
|
|
*
|
|
|
|
|
---------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Валидатор для кастомных методов объектов
|
2012-04-27 18:03:08 +03:00
|
|
|
|
* Валидация происходит через метод внешнего объекта
|
|
|
|
|
*
|
|
|
|
|
* @package engine.modules.validate
|
|
|
|
|
* @since 1.0
|
2012-03-02 19:27:16 +02:00
|
|
|
|
*/
|
|
|
|
|
class ModuleValidate_EntityValidatorInline extends ModuleValidate_EntityValidator {
|
|
|
|
|
/**
|
|
|
|
|
* Метод объекта для валидации, в него передаются параметры: $sValue и $aParam
|
|
|
|
|
*
|
|
|
|
|
* @var string
|
|
|
|
|
*/
|
|
|
|
|
public $method;
|
|
|
|
|
/**
|
|
|
|
|
* Объект у которого будет вызван метод валидации, дляя сущности - это сам объект сущности
|
|
|
|
|
*
|
2012-04-27 18:03:08 +03:00
|
|
|
|
* @var LsObject object
|
2012-03-02 19:27:16 +02:00
|
|
|
|
*/
|
|
|
|
|
public $object;
|
|
|
|
|
/**
|
|
|
|
|
* Список параметров для передачи в метод валидации
|
|
|
|
|
*
|
|
|
|
|
* @var array
|
|
|
|
|
*/
|
|
|
|
|
public $params;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Запуск валидации
|
|
|
|
|
*
|
2012-04-27 18:03:08 +03:00
|
|
|
|
* @param mixed $sValue Данные для валидации
|
2012-03-02 19:27:16 +02:00
|
|
|
|
* @return bool|string
|
|
|
|
|
*/
|
|
|
|
|
public function validate($sValue) {
|
|
|
|
|
$sMethod=$this->method;
|
|
|
|
|
return $this->object->$sMethod($sValue,$this->params);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
?>
|