• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/kanban/entity/deal.php
  • Класс: Bitrix\Crm\Kanban\Entity\Deal
  • Вызов: Deal::getPopupFields
public function getPopupFields(string $viewType): array
{
	$fields = parent::getPopupFields($viewType);
	foreach ($fields as $i => $field)
	{
		if (mb_strpos($field['NAME'], 'CONTACT_') === 0 || mb_strpos($field['NAME'], 'COMPANY_') === 0)
		{
			unset($fields[$i]);
		}

		if (
			$viewType === static::VIEW_TYPE_EDIT
			&& in_array(
				$field['NAME'],
				[
					'ORDER_STAGE',
					'DELIVERY_STAGE',
					'PAYMENT_STAGE',
					'PAYMENT_PAID',
					'ORDER_SOURCE',
					'IS_PRODUCT_RESERVED',
					'ROBOT_DEBUGGER',
				]
			)
		)
		{
			unset($fields[$i]);
		}
	}

	if ($viewType !== static::VIEW_TYPE_EDIT)
	{
		if (ClientDataProvider::getPriorityEntityTypeId() === \CCrmOwnerType::Contact)
		{
			$firstProvider = $this->getContactDataProvider();
			$secondProvider = $this->getCompanyDataProvider();
		}
		else
		{
			$firstProvider = $this->getCompanyDataProvider();
			$secondProvider = $this->getContactDataProvider();
		}
		$fields = array_merge(
			$fields,
			$firstProvider->getPopupFields(),
			$secondProvider->getPopupFields(),
		);
	}

	return $fields;
}