• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/classes/general/iblock.php
  • Класс: CAllIBlock
  • Вызов: CAllIBlock::SetMessages
static function SetMessages($ID, $arFields)
{
	/** @global CDatabase $DB */
	global $DB;
	$ID = intval($ID);
	if($ID > 0)
	{
		$arMessages = array(
			"ELEMENT_NAME",
			"ELEMENTS_NAME",
			"ELEMENT_ADD",
			"ELEMENT_EDIT",
			"ELEMENT_DELETE",
			"SECTION_NAME",
			"SECTIONS_NAME",
			"SECTION_ADD",
			"SECTION_EDIT",
			"SECTION_DELETE",
		);
		$arUpdate = array();
		foreach($arMessages as $MESSAGE_ID)
		{
			if(array_key_exists($MESSAGE_ID, $arFields))
				$arUpdate[] = $MESSAGE_ID;
		}
		if(count($arUpdate) > 0)
		{
			$res = $DB->Query("
				DELETE FROM b_iblock_messages
				WHERE IBLOCK_ID = ".$ID."
				AND MESSAGE_ID in ('".implode("', '", $arUpdate)."')
			");
			if($res)
			{
				foreach($arUpdate as $MESSAGE_ID)
				{
					$MESSAGE_TEXT = trim($arFields[$MESSAGE_ID]);
					if($MESSAGE_TEXT <> '')
						$DB->Add("b_iblock_messages", array(
							"ID" => 1, //FAKE field for not use sequence
							"IBLOCK_ID" => $ID,
							"MESSAGE_ID" => $MESSAGE_ID,
							"MESSAGE_TEXT" => $MESSAGE_TEXT,
						));
				}
			}
		}
	}
}