- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/site_template.php
- Класс: CSiteTemplate
- Вызов: CSiteTemplate::Update
public function Update($ID, $arFields)
{
/** @global CMain $APPLICATION */
global $APPLICATION;
if(!$this->CheckFields($arFields, $ID))
{
return false;
}
$path = getLocalPath("templates/".$ID, BX_PERSONAL_ROOT);
if($path === false)
{
return false;
}
if(isset($arFields["CONTENT"]))
{
$p = mb_strpos($arFields["CONTENT"], "#WORK_AREA#");
$header = mb_substr($arFields["CONTENT"], 0, $p);
$APPLICATION->SaveFileContent($_SERVER["DOCUMENT_ROOT"].$path."/header.php", $header);
$footer = mb_substr($arFields["CONTENT"], $p + mb_strlen("#WORK_AREA#"));
$APPLICATION->SaveFileContent($_SERVER["DOCUMENT_ROOT"].$path."/footer.php", $footer);
}
if(isset($arFields["STYLES"]))
{
$APPLICATION->SaveFileContent($_SERVER["DOCUMENT_ROOT"].$path."/styles.css", $arFields["STYLES"]);
}
if(isset($arFields["TEMPLATE_STYLES"]))
{
$APPLICATION->SaveFileContent($_SERVER["DOCUMENT_ROOT"].$path."/template_styles.css", $arFields["TEMPLATE_STYLES"]);
}
if(isset($arFields["NAME"]) || isset($arFields["DESCRIPTION"]) || isset($arFields["SORT"]) || isset($arFields["TYPE"]))
{
$db_t = CSiteTemplate::GetList(array(), array("ID" => $ID), array("NAME", "DESCRIPTION", "SORT"));
$ar_t = $db_t->Fetch();
if(!isset($arFields["NAME"]))
$arFields["NAME"] = $ar_t["NAME"];
if(!isset($arFields["DESCRIPTION"]))
$arFields["DESCRIPTION"] = $ar_t["DESCRIPTION"];
if(!isset($arFields["SORT"]))
$arFields["SORT"] = $ar_t["SORT"];
if(!isset($arFields["TYPE"]))
$arFields["TYPE"] = $ar_t["TYPE"];
if(!isset($arFields["EDITOR_STYLES"]))
$arFields["EDITOR_STYLES"] = $ar_t["EDITOR_STYLES"];
self::SaveDescription($arFields, $_SERVER["DOCUMENT_ROOT"].$path."/description.php");
}
self::SaveStyleDescription($arFields["STYLES_DESCRIPTION"], $_SERVER["DOCUMENT_ROOT"].$path."/.styles.php");
return true;
}