• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/site.php
  • Класс: CAllSite
  • Вызов: CAllSite::Add
public function Add($arFields)
{
	global $DB, $DOCUMENT_ROOT, $CACHE_MANAGER;

	if(!$this->CheckFields($arFields))
		return false;

	if(isset($arFields["ACTIVE"]) && $arFields["ACTIVE"]!="Y")
		$arFields["ACTIVE"]="N";

	if(isset($arFields["DEF"]))
	{
		if($arFields["DEF"]=="Y")
			$DB->Query("UPDATE b_lang SET DEF='N' WHERE DEF='Y'");
		else
			$arFields["DEF"]="N";
	}

	$arInsert = $DB->PrepareInsert("b_lang", $arFields);

	$strSql =
		"INSERT INTO b_lang(".$arInsert[0].") ".
		"VALUES(".$arInsert[1].")";

	$DB->Query($strSql, false, "FILE: ".__FILE__."
LINE: ".__LINE__); if(CACHED_b_lang!==false) $CACHE_MANAGER->CleanDir("b_lang"); if(isset($arFields["DIR"])) CheckDirPath($DOCUMENT_ROOT.$arFields["DIR"]); if(isset($arFields["DOMAINS"])) self::SaveDomains($arFields["LID"], $arFields["DOMAINS"]); if(isset($arFields["TEMPLATE"])) { foreach($arFields["TEMPLATE"] as $arTemplate) { if(trim($arTemplate["TEMPLATE"]) <> '') { $arInsert = $DB->PrepareInsert("b_site_template", [ 'SITE_ID' => $arFields["LID"], 'CONDITION' => trim($arTemplate["CONDITION"]), 'SORT' => $arTemplate["SORT"], 'TEMPLATE' => trim($arTemplate["TEMPLATE"]), ]); $strSql = "INSERT INTO b_site_template(".$arInsert[0].") VALUES (".$arInsert[1].")"; $DB->Query($strSql, false, "FILE: ".__FILE__."
LINE: ".__LINE__); } } if(CACHED_b_site_template!==false) $CACHE_MANAGER->Clean("b_site_template"); } SiteTable::cleanCache(); return $arFields["LID"]; }