ModuleGeo_EntityGeo
Package | application.modules.geo |
---|---|
Inheritance | class ModuleGeo_EntityGeo » Entity » LsObject |
Subclasses | ModuleGeo_EntityCity, ModuleGeo_EntityCountry, ModuleGeo_EntityRegion |
Since | 1.0 |
Source Code | /application/classes/modules/geo/entity/Geo.entity.class.php |
Объект сущности гео-объекта
Protected Properties
Property | Type | Description | Defined By |
---|---|---|---|
_aBehaviors | Список поведений в виде готовых объектов, формируется автоматически | LsObject | |
_aData | array | Данные сущности, на этот массив мапятся методы set* и get* | Entity |
aBehaviors | array | Список поведений | LsObject |
aValidateErrors | array | Список ошибок валидации в разрезе полей, например | Entity |
aValidateRules | array | Список правил валидации полей | Entity |
sPrimaryKey | null|string | Имя поля с первичным ключом в БД | Entity |
sValidateScenario | string | Сценарий валиадции полей | Entity |
Public Methods
Method | Description | Defined By |
---|---|---|
AddBehaviorHook() | Добавляет хук поведения | LsObject |
AttachBehavior() | Присоединяет поведение к объекту | LsObject |
DetachBehavior() | Отсоединяет поведение от объекта | LsObject |
GetBehavior() | Возвращает объект поведения по его имени | LsObject |
GetBehaviors() | Возвращает все объекты поведения | LsObject |
Init() | Метод инициализации сущности, вызывается при её создании | Entity |
RemoveBehaviorHook() | Удаляет хук поведения | LsObject |
RunBehaviorHook() | Запускает хук поведения на выполнение | LsObject |
_Validate() | Выполняет валидацию данных сущности | Entity |
__call() | Ставим хук на вызов неизвестного метода и считаем что хотели вызвать метод какого либо модуля | Entity |
__clone() | При клонировании сбрасываем поведения | LsObject |
__construct() | Если передать в конструктор ассоциативный массив свойств и их значений, то они автоматом загрузятся в сущность | Entity |
__get() | Обработка доступа к объекты поведения | LsObject |
_addValidateError() | Добавляет для поля ошибку в список ошибок | Entity |
_clearValidateErrors() | Очищает список всех ошибок или для конкретного поля | Entity |
_createValidators() | Создает и возвращает список валидаторов для сущности | Entity |
_getData() | Получает массив данных сущности | Entity |
_getDataArray() | Рекурсивное преобразование объекта и вложенных объектов в массив | Entity |
_getDataOne() | Возвращает данные по конкретному полю | Entity |
_getPrimaryKey() | Получение первичного ключа сущности (ключ, а не значение!) | Entity |
_getPrimaryKeyValue() | Возвращает значение первичного ключа/поля | Entity |
_getValidateError() | Возвращает первую ошибку для поля или среди всех полей | Entity |
_getValidateErrors() | Возвращает список ошибок для всех полей или одного поля | Entity |
_getValidateRules() | Возвращает список правил для валидации | Entity |
_getValidateScenario() | Возвращает текущий сценарий валидации | Entity |
_getValidators() | Возвращает список валидаторов с учетом текущего сценария | Entity |
_hasValidateErrors() | Проверяет есть ли ошибки валидации | Entity |
_setData() | Устанавливает данные сущности | Entity |
_setDataSafe() | Устанавливает данные, но только те, которые есть в $this->aValidateRules | Entity |
_setValidateScenario() | Устанавливает сценарий валидации | Entity |
getCity() | Возвращает гео-объект города | ModuleGeo_EntityGeo |
getCountry() | Возвращает гео-объект страны | ModuleGeo_EntityGeo |
getName() | Возвращает имя гео-объекта в зависимости от языка | ModuleGeo_EntityGeo |
getRegion() | Возвращает гео-объект региона | ModuleGeo_EntityGeo |
getType() | Возвращает тип гео-объекта | ModuleGeo_EntityGeo |
Protected Methods
Method | Description | Defined By |
---|---|---|
PrepareBehaviors() | Инициализация поведений | LsObject |
Method Details
getCity()
method
public ModuleGeo_EntityGeo|null getCity()
| ||
{return} | ModuleGeo_EntityGeo|null |
Source Code: /application/classes/modules/geo/entity/Geo.entity.class.php#117 (show)
public function getCity()
{
if ($this->getType() == 'city') {
return $this;
}
if ($oCity = $this->_getDataOne('city')) {
return $oCity;
}
if ($this->getCityId()) {
$oCity = $this->Geo_GetCityById($this->getCityId());
return $this->_aData['city'] = $oCity;
}
return null;
}
Возвращает гео-объект города
getCountry()
method
public ModuleGeo_EntityGeo|null getCountry()
| ||
{return} | ModuleGeo_EntityGeo|null |
Source Code: /application/classes/modules/geo/entity/Geo.entity.class.php#77 (show)
public function getCountry()
{
if ($this->getType() == 'country') {
return $this;
}
if ($oCountry = $this->_getDataOne('country')) {
return $oCountry;
}
if ($this->getCountryId()) {
$oCountry = $this->Geo_GetCountryById($this->getCountryId());
return $this->_aData['country'] = $oCountry;
}
return null;
}
Возвращает гео-объект страны
getName()
method
public string getName()
| ||
{return} | string |
Source Code: /application/classes/modules/geo/entity/Geo.entity.class.php#36 (show)
public function getName()
{
$sName = '';
$sLangDef = Config::get('lang.default');
if ($sLangDef == 'ru') {
$sName = $this->getNameRu();
} elseif ($sLangDef == 'en') {
$sName = $this->getNameEn();
}
$sLang = Config::get('lang.current');
if ($sLang == 'ru' and $this->getNameRu()) {
$sName = $this->getNameRu();
} elseif ($sLang == 'en' and $this->getNameEn()) {
$sName = $this->getNameEn();
}
return $sName;
}
Возвращает имя гео-объекта в зависимости от языка
getRegion()
method
public ModuleGeo_EntityGeo|null getRegion()
| ||
{return} | ModuleGeo_EntityGeo|null |
Source Code: /application/classes/modules/geo/entity/Geo.entity.class.php#97 (show)
public function getRegion()
{
if ($this->getType() == 'region') {
return $this;
}
if ($oRegion = $this->_getDataOne('region')) {
return $oRegion;
}
if ($this->getRegionId()) {
$oRegion = $this->Geo_GetRegionById($this->getRegionId());
return $this->_aData['region'] = $oRegion;
}
return null;
}
Возвращает гео-объект региона
getType()
method
public null|string getType()
| ||
{return} | null|string |
Source Code: /application/classes/modules/geo/entity/Geo.entity.class.php#60 (show)
public function getType()
{
if ($this instanceof ModuleGeo_EntityCity) {
return 'city';
} elseif ($this instanceof ModuleGeo_EntityRegion) {
return 'region';
} elseif ($this instanceof ModuleGeo_EntityCountry) {
return 'country';
}
return null;
}
Возвращает тип гео-объекта