• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/classes/general/iblock.php
  • Класс: CAllIBlock
  • Вызов: CAllIBlock::GetMessages
static function GetMessages($ID, $type="")
{
	/** @global CDatabase $DB */
	global $DB;
	$ID = intval($ID);
	$arMessages = array(
		"ELEMENT_NAME" => GetMessage("IBLOCK_MESS_ELEMENT_NAME"),
		"ELEMENTS_NAME" => "",
		"ELEMENT_ADD" => GetMessage("IBLOCK_MESS_ELEMENT_ADD"),
		"ELEMENT_EDIT" => GetMessage("IBLOCK_MESS_ELEMENT_EDIT"),
		"ELEMENT_DELETE" => GetMessage("IBLOCK_MESS_ELEMENT_DELETE"),
		"SECTION_NAME" => GetMessage("IBLOCK_MESS_SECTION_NAME"),
		"SECTIONS_NAME" => "",
		"SECTION_ADD" => GetMessage("IBLOCK_MESS_SECTION_ADD"),
		"SECTION_EDIT" => GetMessage("IBLOCK_MESS_SECTION_EDIT"),
		"SECTION_DELETE" => GetMessage("IBLOCK_MESS_SECTION_DELETE"),
	);
	$res = $DB->Query("
		SELECT
			B.IBLOCK_TYPE_ID
			,M.IBLOCK_ID
			,M.MESSAGE_ID
			,M.MESSAGE_TEXT
		FROM
			b_iblock B
			LEFT JOIN b_iblock_messages M ON B.ID = M.IBLOCK_ID
		WHERE
			B.ID = ".$ID."
	");

	while($ar = $res->Fetch())
	{
		$type = $ar["IBLOCK_TYPE_ID"];
		if($ar["MESSAGE_ID"])
			$arMessages[$ar["MESSAGE_ID"]] = $ar["MESSAGE_TEXT"];
	}
	if(($arMessages["ELEMENTS_NAME"] == '') || ($arMessages["SECTIONS_NAME"] == ''))
	{
		if($type)
		{
			$arType = CIBlockType::GetByIDLang($type, LANGUAGE_ID);
			if($arType)
			{
				if($arMessages["ELEMENTS_NAME"] == '')
					$arMessages["ELEMENTS_NAME"] = $arType["ELEMENT_NAME"];
				if($arMessages["SECTIONS_NAME"] == '')
					$arMessages["SECTIONS_NAME"] = $arType["SECTION_NAME"];
			}
		}
	}
	if($arMessages["ELEMENTS_NAME"] == '')
		$arMessages["ELEMENTS_NAME"] = GetMessage("IBLOCK_MESS_ELEMENTS_NAME");
	if($arMessages["SECTIONS_NAME"] == '')
		$arMessages["SECTIONS_NAME"] = GetMessage("IBLOCK_MESS_SECTIONS_NAME");
	return $arMessages;
}