From 7dff871c0c71f0ea17ea5cce968869b723ea5290 Mon Sep 17 00:00:00 2001 From: Alexey Kachayev Date: Sun, 14 Mar 2010 20:01:25 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9A=D0=BE=D1=80=D1=80=D0=B5=D0=BA=D1=82?= =?UTF-8?q?=D0=BD=D0=BE=D0=B5=20=D0=BE=D0=BF=D1=80=D0=B5=D0=B4=D0=B5=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BF=D1=83=D1=82=D0=B8=20=D0=BA=20?= =?UTF-8?q?=D1=88=D0=B0=D0=B1=D0=BB=D0=BE=D0=BD=D1=83=20=D0=BF=D1=80=D0=B8?= =?UTF-8?q?=20=D1=81=D0=BC=D0=B5=D0=BD=D0=B5=20=D1=88=D0=B0=D0=B1=D0=BB?= =?UTF-8?q?=D0=BE=D0=BD=D0=B0=20event`=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- engine/classes/Action.class.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/engine/classes/Action.class.php b/engine/classes/Action.class.php index be6766e1..8b6eb34e 100644 --- a/engine/classes/Action.class.php +++ b/engine/classes/Action.class.php @@ -215,7 +215,22 @@ abstract class Action extends Object { * @param string $sTemplate Путь до шаблона относительно каталога шаблонов экшена */ protected function SetTemplateAction($sTemplate) { - $this->sActionTemplate='actions/'.$this->GetActionClass().'/'.$sTemplate.'.tpl'; + $sActionClass=$this->GetActionClass(); + /** + * Если класс не является делегатом плагина, устанавлваем шаблон по умолчанию. + * В случае делегирования, проверяем сначала имеет ли указанный плагин замену для шаблона. + */ + if(!$this->Plugin_isDelegated('action',$sActionClass)) { + $this->sActionTemplate='actions/'.$sActionClass.'/'.$this->sCurrentEvent.'.tpl'; + } else { + $sDelegater = $this->Plugin_GetDelegater('action',$sActionClass); + $sTemplatePath = Plugin::GetTemplatePath($this->Plugin_GetDelegateSign('action',$sDelegater)); + + $this->sActionTemplate = is_file($sFile=$sTemplatePath.'actions/'.$sDelegater.'/'.$sTemplate.'.tpl') + ? $sFile + : 'actions/'.$sDelegater.'/'.$sTemplate.'.tpl'; + } + } /**