• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/classes/general/im_messenger.php
  • Класс: CIMMessenger
  • Вызов: CIMMessenger::GetById
static function GetById($ID, $params = Array())
{
	global $DB;

	$ID = intval($ID);

	$strSql = "
		SELECT
			DISTINCT M.*,
			".$DB->DatetimeToTimestampFunction('M.DATE_CREATE')." DATE_CREATE,
			C.TYPE MESSAGE_TYPE,
			C.AUTHOR_ID CHAT_AUTHOR_ID,
			C.ENTITY_TYPE CHAT_ENTITY_TYPE,
			C.ENTITY_ID CHAT_ENTITY_ID,
			C.PARENT_ID CHAT_PARENT_ID,
			C.PARENT_MID CHAT_PARENT_MID,
			C.ENTITY_DATA_1 CHAT_ENTITY_DATA_1,
			C.ENTITY_DATA_2 CHAT_ENTITY_DATA_2,
			C.ENTITY_DATA_3 CHAT_ENTITY_DATA_3
		FROM b_im_message M
		LEFT JOIN b_im_chat C ON M.CHAT_ID = C.ID
		WHERE M.ID = ".$ID;
	$dbRes = $DB->Query($strSql, false, "File: ".__FILE__."
Line: ".__LINE__); if ($arRes = $dbRes->Fetch()) { $param = CIMMessageParam::Get($arRes['ID']); $arRes['PARAMS'] = $param? $param: Array(); } if ($arRes && ($params['WITH_FILES'] ?? null) === 'Y') { $arFiles = Array(); if (isset($arRes['PARAMS']['FILE_ID'])) { foreach ($arRes['PARAMS']['FILE_ID'] as $fileId) { $arFiles[$fileId] = $fileId; } } $arRes['FILES'] = CIMDisk::GetFiles($arRes['CHAT_ID'], $arFiles, false); } return $arRes; }