- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/component/itemlist.php
- Класс: Bitrix\Crm\Component\ItemList
- Вызов: ItemList::getToolbarCategories
protected function getToolbarCategories(array $categories): array
{
$menu = parent::getToolbarCategories($categories);
if ($this->factory->isCountersEnabled())
{
foreach ($menu as &$item)
{
$counterValue = $this->getCounterValue($item['categoryId']);
if ($counterValue <= 0)
{
continue;
}
$text = htmlspecialcharsbx($item['text']);
$item['html'] = sprintf(
'%s %d',
$text,
$counterValue
);
}
}
if ($this->userPermissions->canWriteConfig())
{
$menu[] = [
'delimiter' => true,
];
$dynamicTypesLimit = RestrictionManager::getDynamicTypesLimitRestriction();
$isTypeSettingsRestricted = $dynamicTypesLimit->isTypeSettingsRestricted($this->entityTypeId);
if ($isTypeSettingsRestricted)
{
$menu[] = [
'text' => Loc::getMessage('CRM_TYPE_CATEGORY_SETTINGS'),
'onclick' => $dynamicTypesLimit->getShowFeatureJsHandler(),
];
}
else
{
$menu[] = [
'text' => Loc::getMessage('CRM_TYPE_CATEGORY_SETTINGS'),
'href' => Container::getInstance()->getRouter()->getCategoryListUrl($this->entityTypeId),
];
}
}
return $menu;
}