- Модуль: iblock
- Путь к файлу: ~/bitrix/modules/iblock/classes/general/iblocktype.php
- Класс: CIBlockType
- Вызов: CIBlockType::GetByIDLang
static function GetByIDLang($ID, $LID, $bFindAny = true)
{
/** @global CDatabase $DB */
global $DB;
$LID = $DB->ForSQL($LID, 2);
if (CACHED_b_iblock_type === false)
{
$strSql = "
SELECT BTL.*, BT.*
FROM b_iblock_type BT, b_iblock_type_lang BTL
WHERE BTL.IBLOCK_TYPE_ID = '".$DB->ForSQL($ID)."'
AND BTL.LID='".$LID."'
AND BT.ID=BTL.IBLOCK_TYPE_ID
";
$res = $DB->Query($strSql);
if ($r = $res->GetNext())
return $r;
}
else
{
$arResult = CIBlockType::_GetCache($ID);
if ($arResult !== false && array_key_exists($LID, $arResult["_lang"]))
{
$res = $arResult["_lang"][$LID];
unset($arResult["_lang"]);
return array_merge($res, $arResult);
}
}
if (!$bFindAny)
return false;
$strSql = "
SELECT BTL.*, BT.*
FROM b_iblock_type BT, b_iblock_type_lang BTL, b_language L
WHERE BTL.IBLOCK_TYPE_ID = '".$DB->ForSQL($ID)."'
AND BTL.LID = L.LID
AND BT.ID=BTL.IBLOCK_TYPE_ID
ORDER BY L.DEF DESC, L.SORT
";
$res = $DB->Query($strSql);
if ($r = $res->GetNext())
return $r;
return false;
}