- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/smile.php
- Класс: CSmile
- Вызов: CSmile::getBySetId
static function getBySetId($type = self::TYPE_ALL, $setId = CSmileSet::SET_ID_BY_CONFIG, $lang = LANGUAGE_ID)
{
$arFilter = array();
if (in_array($type, array(self::TYPE_SMILE, self::TYPE_ICON)))
$arFilter["TYPE"] = $type;
$setId = intval($setId);
if ($setId == CSmileSet::SET_ID_BY_CONFIG)
{
$arFilter['PARENT_ID'] = CSmileGallery::getDefaultId();
$cacheSetId = 'p'.$arFilter['PARENT_ID'];
}
else
{
$cacheSetId = $setId;
if ($setId != CSmileSet::SET_ID_ALL)
$arFilter['SET_ID'] = $setId;
}
if ($lang <> '')
$arFilter["LID"] = htmlspecialcharsbx($lang);
global $CACHE_MANAGER;
$cache_id = "b_smile_set_2_".$arFilter["TYPE"]."_".$cacheSetId."_".$lang;
if (CACHED_b_smile !== false && $CACHE_MANAGER->Read(CACHED_b_smile, $cache_id, "b_smile"))
{
$arResult = $CACHE_MANAGER->Get($cache_id);
}
else
{
$arResult = self::getList(Array(
'ORDER' => Array('SORT' => 'ASC'),
'FILTER' => $arFilter,
));
if (CACHED_b_smile !== false)
$CACHE_MANAGER->Set($cache_id, $arResult);
}
return $arResult;
}