• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/filter/dataprovider/agentcontractdataprovider.php
  • Класс: BitrixCatalogFilterDataProviderAgentContractDataProvider
  • Вызов: AgentContractDataProvider::prepareFields
public function prepareFields()
{
	$fields = [
		'ID' => $this->createField('ID', [
			'default' => false,
			'type' => 'number',
		]),
		'TITLE' => $this->createField('TITLE', [
			'default' => true,
		]),
		'DATE_MODIFY' => $this->createField('DATE_MODIFY', [
			'default' => true,
			'type' => 'date',
			'data' => [
				'exclude' => [
					MainUIFilterDateType::TOMORROW,
					MainUIFilterDateType::NEXT_DAYS,
					MainUIFilterDateType::NEXT_WEEK,
					MainUIFilterDateType::NEXT_MONTH,
				],
			],
		]),
		'DATE_CREATE' => $this->createField('DATE_CREATE', [
			'default' => true,
			'type' => 'date',
			'data' => [
				'exclude' => [
					MainUIFilterDateType::TOMORROW,
					MainUIFilterDateType::NEXT_DAYS,
					MainUIFilterDateType::NEXT_WEEK,
					MainUIFilterDateType::NEXT_MONTH,
				],
			],
		]),
		'MODIFIED_BY' => $this->createField('MODIFIED_BY', [
			'default' => true,
			'type' => 'entity_selector',
			'partial' => true,
		]),
		'CREATED_BY' => $this->createField('CREATED_BY', [
			'default' => true,
			'type' => 'entity_selector',
			'partial' => true,
		]),
	];

	if (MainLoader::includeModule('crm'))
	{
		$fields['PRODUCTS'] = $this->createField('PRODUCTS', [
			'partial' => true,
			'type' => 'entity_selector',
		]);

		$fields['SECTIONS'] = $this->createField('SECTIONS', [
			'partial' => true,
			'type' => 'entity_selector',
		]);
	}

	if ($this->contractorsProvider)
	{
		$contractorsFields = $this->contractorsProvider::getDocumentsGridFilterFields();
		foreach ($contractorsFields as $contractorsField)
		{
			$fields[$contractorsField['CODE']] = $this->createField(
				$contractorsField['CODE'],
				$contractorsField['PARAMS']
			);
		}
	}
	else
	{
		$fields['CONTRACTOR_ID'] = $this->createField('CONTRACTOR_ID', [
			'partial' => true,
			'type' => 'entity_selector',
			'default' => true,
		]);
	}

	return $fields;
}