- Модуль: iblock
- Путь к файлу: ~/bitrix/modules/iblock/classes/general/prop_section_auto.php
- Класс: CIBlockPropertySectionAutoComplete
- Вызов: CIBlockPropertySectionAutoComplete::GetPublicViewHTML
static function GetPublicViewHTML($arProperty, $arValue, $strHTMLControlName)
{
static $cache = array();
$strResult = '';
$arValue['VALUE'] = (int)($arValue['VALUE'] ?? 0);
if ($arValue['VALUE'] > 0)
{
if (!isset($cache[$arValue['VALUE']]))
{
$arFilter = array();
$intIBlockID = intval($arProperty['LINK_IBLOCK_ID']);
if (0 < $intIBlockID) $arFilter['IBLOCK_ID'] = $intIBlockID;
$arFilter['ID'] = $arValue['VALUE'];
$arFilter["ACTIVE"] = "Y";
$arFilter["CHECK_PERMISSIONS"] = "Y";
$arFilter["MIN_PERMISSION"] = "R";
$rsElements = CIBlockSection::GetList(
array(),
$arFilter,
false,
array("ID","IBLOCK_ID","NAME","SECTION_PAGE_URL")
);
if (isset($strHTMLControlName['SECTION_URL']))
{
$rsElements->SetUrlTemplates('', $strHTMLControlName['SECTION_URL']);
}
$cache[$arValue['VALUE']] = $rsElements->GetNext(true,true);
}
if (is_array($cache[$arValue['VALUE']]))
{
if (isset($strHTMLControlName['MODE']) && 'CSV_EXPORT' == $strHTMLControlName['MODE'])
{
$strResult = $cache[$arValue['VALUE']]['ID'];
}
elseif (isset($strHTMLControlName['MODE']) && ('SIMPLE_TEXT' == $strHTMLControlName['MODE'] || 'ELEMENT_TEMPLATE' == $strHTMLControlName['MODE']))
{
$strResult = $cache[$arValue['VALUE']]["~NAME"];
}
else
{
$strResult = ''.$cache[$arValue['VALUE']]["NAME"].'';
}
}
}
return $strResult;
}