• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/controller/category.php
  • Класс: Bitrix\Crm\Controller\Category
  • Вызов: Category::listAction
public function listAction(int $entityTypeId, array $filter = []): ?Page
{
	$factory = $this->getFactory($entityTypeId);
	if (!$factory)
	{
		return null;
	}
	$categories = $this->userPermissions->filterAvailableForReadingCategories(
		$factory->getCategories()
	);

	$filteredCategories = [];
	if (isset($filter['code']))
	{
		foreach ($categories as $category)
		{
			if ($category->getCode() === $filter['code'])
			{
				$filteredCategories[] = $category;
			}
		}
	}
	else
	{
		$filteredCategories = $categories;
	}

	return new Page(
		'categories',
		$filteredCategories,
		static function () use ($filteredCategories): int {
			return count($filteredCategories);
		}
	);
}