• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/main/uiselector/crmcompanies.php
  • Класс: Bitrix\Crm\Integration\Main\UISelector\CrmCompanies
  • Вызов: CrmCompanies::getSearchFilter
protected function getSearchFilter(string $search, array $options)
{
	$filter = false;

	if (check_email($search, true))
	{
		$entityIdList = [];
		$res = CCrmFieldMulti::getList(
			[],
			[
				'ENTITY_ID' => CCrmOwnerType::CompanyName,
				'TYPE_ID' => CCrmFieldMulti::EMAIL,
				'VALUE' => $search
			]
		);
		while($multiFields = $res->fetch())
		{
			$entityIdList[] = $multiFields['ELEMENT_ID'];
		}
		if (!empty($entityIdList))
		{
			$filter = ['@ID' => $entityIdList];
		}
	}
	else
	{
		$filter = [
			'SEARCH_CONTENT' => $search,
			'%TITLE' => $search,
			'@CATEGORY_ID' => 0,
			'__ENABLE_SEARCH_CONTENT_PHONE_DETECTION' => false
		];
	}

	return
		is_array($filter)
			? $this->prepareOptionalFilter($filter, $options)
			: false
		;
}