ActionPlugin
Package | engine |
---|---|
Inheritance | abstract class ActionPlugin » Action » LsObject |
Since | 1.0 |
Source Code | /engine/classes/ActionPlugin.class.php |
Абстрактный класс экшена плагина.
От этого класса необходимо наследовать экшены плагина, эот позволит корректно определять текущий шаблон плагина для рендеринга экшена
Protected Properties
Property | Type | Description | Defined By |
---|---|---|---|
aParams | array | Список параметров из URL | Action |
aParamsEventMatch | array | Список совпадений по регулярному выражению для евента | Action |
aRegisterEvent | array | Список зарегистрированных евентов | Action |
oEngine | Engine|null | Объект ядра | Action |
sActionTemplate | string|null | Шаблон экшена | Action |
sCurrentAction | null|string | Текущий экшен | Action |
sCurrentEvent | string|null | Текущий евент | Action |
sCurrentEventName | string|null | Имя текущий евента | Action |
sDefaultEvent | string|null | Дефолтный евент | Action |
sTemplatePathPlugin | string|null | Полный серверный путь до текущего шаблона плагина | ActionPlugin |
Public Methods
Method | Description | Defined By |
---|---|---|
EventShutdown() | Выполняется при завершение экшена, после вызова основного евента | Action |
ExecEvent() | Запускает евент на выполнение | Action |
GetActionClass() | Получить каталог с шаблонами экшена(совпадает с именем класса) | Action |
GetCurrentEventName() | Возвращает имя евента | Action |
GetDefaultEvent() | Получает евент по умолчанию | Action |
GetParam() | Получает параметр из URL по его номеру, если его нет то null | Action |
GetParams() | Получает список параметров из УРЛ | Action |
GetTemplate() | Получить шаблон | Action |
Init() | Абстрактный метод инициализации экшена | Action |
SetDefaultEvent() | Устанавливает евент по умолчанию | Action |
SetParam() | Установить значение параметра(эмуляция параметра в URL). | Action |
__call() | Ставим хук на вызов неизвестного метода и считаем что хотели вызвать метод какого либо модуля | Action |
__construct() | Конструктор | Action |
getTemplatePathPlugin() | Возвращает путь к текущему шаблону плагина | ActionPlugin |
setTemplatePathPlugin() | Установить значение пути к директории шаблона плагина | ActionPlugin |
Protected Methods
Method | Description | Defined By |
---|---|---|
AddEvent() | Добавляет евент в экшен | Action |
AddEventPreg() | Добавляет евент в экшен, используя регулярное вырожение для евента и параметров | Action |
EventNotFound() | Вызывается в том случаи если не найден евент который запросили через URL | Action |
GetEventMatch() | Возвращает элементы совпадения по регулярному выражению для евента | Action |
GetParamEventMatch() | Возвращает элементы совпадения по регулярному выражению для параметров евента | Action |
RegisterEvent() | Абстрактный метод регистрации евентов. | Action |
SetTemplate() | Устанавливает какой шаблон выводить | Action |
SetTemplateAction() | Устанавливает какой шаблон выводить | Action |
Property Details
sTemplatePathPlugin
property
protected string|null $sTemplatePathPlugin;
Полный серверный путь до текущего шаблона плагина
Method Details
getTemplatePathPlugin()
method
public string getTemplatePathPlugin()
| ||
{return} | string |
Source Code: /engine/classes/ActionPlugin.class.php#39 (show)
public function getTemplatePathPlugin() {
if(is_null($this->sTemplatePathPlugin)) {
preg_match('/^Plugin([\w]+)_Action([\w]+)$/i',$this->GetActionClass(),$aMatches);
/**
* Проверяем в списке шаблонов
*/
$aMatches[1]=strtolower($aMatches[1]);
$aPaths=glob(Config::Get('path.root.server').'/plugins/'.$aMatches[1].'/templates/skin/*/actions/Action'.ucfirst($aMatches[2]),GLOB_ONLYDIR);
$sTemplateName=($aPaths and in_array(
Config::Get('view.skin'),
array_map(
create_function(
'$sPath',
'preg_match("/skin\/([\w\-]+)\/actions/i",$sPath,$aMatches); return $aMatches[1];'
),
$aPaths
)
))
? Config::Get('view.skin')
: 'default';
$sDir=Config::Get('path.root.server')."/plugins/{$aMatches[1]}/templates/skin/{$sTemplateName}/";
$this->sTemplatePathPlugin = is_dir($sDir) ? $sDir : null;
}
return $this->sTemplatePathPlugin;
}
Возвращает путь к текущему шаблону плагина
setTemplatePathPlugin()
method
public bool setTemplatePathPlugin(string $sTemplatePath)
| ||
$sTemplatePath | string | Полный серверный путь до каталога с шаблоном |
{return} | bool |
Source Code: /engine/classes/ActionPlugin.class.php#73 (show)
public function setTemplatePathPlugin($sTemplatePath) {
if(!is_dir($sTemplatePath)) return false;
$this->sTemplatePathPlugin = $sTemplatePath;
}
Установить значение пути к директории шаблона плагина