- Модуль: catalog
- Путь к файлу: ~/bitrix/modules/catalog/lib/controller/section.php
- Класс: BitrixCatalogControllerSection
- Вызов: Section::listAction
public function listAction(PageNavigation $pageNavigation, array $select = [], array $filter = [], array $order = []): ?Page
{
$r = $this->checkPermissionIBlockSectionList($filter['IBLOCK_ID']);
if($r->isSuccess())
{
$result = [];
$select = empty($select)? ['*']:$select;
$order = empty($order)? ['ID'=>'ASC']:$order;
if (isset($filter['IBLOCK_SECTION_ID']))
{
$filter['SECTION_ID'] = $filter['IBLOCK_SECTION_ID'];
unset($filter['IBLOCK_SECTION_ID']);
}
$r = CIBlockSection::GetList($order, $filter, false, $select, self::getNavData($pageNavigation->getOffset()));
while ($l = $r->fetch())
$result[] = $l;
return new Page('SECTIONS', $result, function() use ($filter)
{
return CIBlockSection::GetCount($filter);
});
}
else
{
$this->addErrors($r->getErrors());
return null;
}
}