ActionPlugin

Package engine
Inheritance abstract class ActionPlugin » Action » LsObject
Since 1.0
Source Code /engine/classes/ActionPlugin.class.php
Абстрактный класс экшена плагина. От этого класса необходимо наследовать экшены плагина, эот позволит корректно определять текущий шаблон плагина для рендеринга экшена

Protected Properties

Hide inherited properties

PropertyTypeDescriptionDefined 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

Hide inherited methods

MethodDescriptionDefined 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

Hide inherited methods

MethodDescriptionDefined 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;
}

Установить значение пути к директории шаблона плагина