• Модуль: 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;
}