• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/lib/component/selector/element.php
  • Класс: BitrixIblockComponentSelectorElement
  • Вызов: Element::getProductFieldsFilterDefinition
protected function getProductFieldsFilterDefinition()
{
	$result = [];

	$binaryStates = $this->getBinaryDictionary();

	if (
		$this->catalogIncluded
		&& (string)$this->getStorageItem(self::STORAGE_ENTITY_IBLOCK, 'CATALOG_TYPE') !== ''
	)
	{
		$result['TYPE'] = [
			'id' => 'TYPE',
			'name' => Loc::getMessage('IBLOCK_SELECTOR_ELEMENT_GRID_COLUMN_TYPE'),
			'type' => 'list',
			'items' => CCatalogAdminTools::getIblockProductTypeList(
				$this->getStorageItem(self::STORAGE_ENTITY_IBLOCK, 'IBLOCK_ID'),
				true
			),
			'params' => ['multiple' => 'Y'],
			'operators' => [
				'default' => '=',
				'exact' => '=',
				'enum' => '@'
			]
		];
		if (CatalogConfigFeature::isProductSetsEnabled())
		{
			$result['BUNDLE'] = [
				'id' => 'BUNDLE',
				'name' => Loc::getMessage('IBLOCK_SELECTOR_ELEMENT_FILTER_FIELD_BUNDLE'),
				'type' => 'list',
				'items' => $binaryStates,
				'operators' => [
					'default' => '='
				]
			];
		}
		$result['AVAILABLE'] = [
			'id' => 'AVAILABLE',
			'name' => Loc::getMessage('IBLOCK_SELECTOR_ELEMENT_GRID_COLUMN_AVAILABLE'),
			'type' => 'list',
			'items' => $binaryStates,
			'operators' => [
				'default' => '='
			]
		];
	}

	return $result;
}