• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/grid/panel/ui/item/group/setparametersgroupchild.php
  • Класс: BitrixCatalogGridPanelUIItemGroupSetParametersGroupChild
  • Вызов: SetParametersGroupChild::getPriceDropdownItem
private function getPriceDropdownItem(array $fields): ?array
{
	if (!isset($fields['VALUE']) || !isset($fields['UNIT']))
	{
		return null;
	}
	$fieldName = $fields['VALUE'];
	$field = $this->getProductEntity()->getField($fieldName);

	$currencyItems = [];
	foreach (CurrencyManager::getCurrencyList() as $currencyId => $currencyName)
	{
		$currencyItems[] = [
			'VALUE' => $currencyId,
			'NAME' => $currencyName
		];
	}

	return [
		'VALUE' => $fieldName,
		'NAME' => $field->getTitle(),
		'ONCHANGE' => [
			[
				'ACTION' => Actions::RESET_CONTROLS,
			],
			[
				'ACTION' => Actions::CREATE,
				'DATA' => [
					[
						'ID' => 'product_field_price_' . $fieldName,
						'NAME' => $fieldName,
						'TYPE' => Types::TEXT,
						'VALUE' => '',
					],
					[
						'ID' => 'product_field_currency_' . $fieldName,
						'NAME' => $fields['UNIT'],
						'TYPE' => Types::DROPDOWN,
						'VALUE' => '',
						'ITEMS' => $currencyItems,
					],
				],
			],
		],
	];
}