- Модуль: crmmobile
- Путь к файлу: ~/bitrix/modules/crmmobile/lib/Controller/Action/GetListAction.php
- Класс: BitrixCrmMobileControllerActionGetListAction
- Вызов: GetListAction::run
public function run(string $entityType, PageNavigation $pageNavigation, array $extra = [])
{
$this->checkModules();
if ($this->hasErrors())
{
return $this->showErrors();
}
$permissions = $this->getUserPermissions($entityType, $extra);
if (!$permissions['read'])
{
return [
'items' => [],
'permissions' => $permissions,
];
}
$extra['userId'] = $this->getCurrentUser()->getId();
$extra['isReckonActivityLessItems'] = CCrmUserCounterSettings::getValue(
CCrmUserCounterSettings::ReckonActivitylessItems,
true
);
$entity = Entity::getInstance($entityType)
->prepare($extra)
->setPageNavigation($pageNavigation);
$result = $entity->getList();
if ($pageNavigation->getOffset() === 0)
{
$result['permissions'] = $permissions;
if (empty($extra['subscribeUser']) || $extra['subscribeUser'] === 'true')
{
$result['isSubscribed'] = $this->subscribeUserToPull($entityType, $extra);
}
}
return $result;
}