• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/component/entitylist/userdataprovider/relatedusers.php
  • Класс: Bitrix\Crm\Component\EntityList\UserDataProvider\RelatedUsers
  • Вызов: RelatedUsers::prepareSelect
public function prepareSelect(array &$select): void
{
	$suffixes = $this->getFieldSuffixes();

	foreach ($this->getUserIdFields() as $fieldId)
	{
		$needLoadField = false;
		foreach ($suffixes as $suffix)
		{
			$fieldIdWithSuffix = $fieldId . '_' . $suffix;
			$fieldIndex = array_search($fieldIdWithSuffix, $select, true);
			if ($fieldIndex !== false)
			{
				$this->addToResultFields[$fieldId][] = $suffix;
				unset($select[$fieldIndex]);
				$needLoadField = true;
			}
		}
		if ($needLoadField)
		{
			$this->addToResultFields[$fieldId][] = self::FIELD_FORMATTED_NAME;
			$this->addToResultFields[$fieldId][] = self::FIELD_SHOW_URL;

			if (!in_array($fieldId, $select))
			{
				$select[] = $fieldId;
			}
		}
	}

	foreach ($this->getClientUserIdFields() as $fieldId)
	{
		if (in_array($fieldId, $select))
		{
			$this->addToResultFields[$fieldId] = [
				self::FIELD_FORMATTED_NAME,
				self::FIELD_SHOW_URL,
			];
		}
	}
}