LeadDataSource::getDetailsPageUrl

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. LeadDataSource
  4. getDetailsPageUrl
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/widget/data/leaddatasource.php
  • Класс: Bitrix\Crm\Widget\Data\LeadDataSource
  • Вызов: LeadDataSource::getDetailsPageUrl
public function getDetailsPageUrl(array $params)
{
	$urlParams = array('WG' => 'Y', 'DS' => $this->getTypeName(), 'page' => '1');

	/** @var string $field */
	$field = isset($params['field']) ? $params['field'] : '';
	if($field !== '')
	{
		$urlParams['FIELD'] = $field;
	}

	/** @var Filter $filter */
	$filter = isset($params['filter']) ? $params['filter'] : null;
	if(!($filter instanceof Filter))
	{
		throw new Main\ObjectNotFoundException("The 'filter' is not found in params.");
	}

	$filterParams = self::externalizeFilter($filter);
	foreach($filterParams as $k => $v)
	{
		if(!is_array($v))
		{
			$urlParams[$k] = $v;
		}
		else
		{
			$qty = count($v);
			for($i = 0; $i < $qty; $i++)
			{
				$urlParams["{$k}[{$i}]"] = $v[$i];
			}
		}
	}

	return \CHTTP::urlAddParams(self::getEntityListPath(), $urlParams);
}

Добавить комментарий