/** * @param CBitrixComponent $component * @param bool|string $siteTemplate * @param string $customTemplatePath * @return bool */ function Init(&$component, $siteTemplate = false, $customTemplatePath = "") { global $arBXRuntimeTemplateEngines; $this->__bInited = false; if ($siteTemplate === false) { $this->__siteTemplate = $component->getSiteTemplateId(); } else { $this->__siteTemplate = $siteTemplate; } if (strlen($this->__siteTemplate) <= 0) { $this->__siteTemplate = ".default"; } $this->__file = ""; $this->__fileAlt = ""; $this->__folder = ""; if (!$arBXRuntimeTemplateEngines) { $this->InitTemplateEngines(); } if (!$component instanceof cbitrixcomponent) { return false; } $this->__component =& $component; $this->__name = $this->__component->GetTemplateName(); if (strlen($this->__name) <= 0) { $this->__name = ".default"; } $this->__name = preg_replace("'[\\\\/]+'", "/", $this->__name); $this->__name = trim($this->__name, "/"); if (!$this->CheckName($this->__name)) { $this->__name = ".default"; } $this->__page = $this->__component->GetTemplatePage(); if (strlen($this->__page) <= 0) { $this->__page = "template"; } if (!$this->__SearchTemplate($customTemplatePath)) { return false; } $this->__GetTemplateEngine(); $this->__bInited = true; return true; }