• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/grid/row/assembler/pricefieldassembler.php
  • Класс: BitrixCatalogGridRowAssemblerPriceFieldAssembler
  • Вызов: PriceFieldAssembler::prepareRow
protected function prepareRow(array $row): array
{
	if (empty($this->getColumnIds()))
	{
		return $row;
	}

	foreach ($this->getColumnIds() as $priceColumnId)
	{
		$currencyColumnId = $this->getCurrencyColumnId($priceColumnId);
		if (isset($currencyColumnId))
		{
			$priceValue = $row['data'][$priceColumnId] ?? null;
			$currencyValue = $row['data'][$currencyColumnId] ?? null;

			if ($this->isCurrencyIncluded)
			{
				$row['columns'][$priceColumnId] = CCurrencyLang::CurrencyFormat(
					$priceValue,
					$currencyValue
				);
			}
			else
			{
				$row['columns'][$priceColumnId] = $priceValue;
			}

			$row['data'][$priceColumnId] = [
				'PRICE' => [
					'NAME' => 'PRICE',
					'VALUE' => $priceValue,
				],
				'CURRENCY' => [
					'NAME' => 'CURRENCY',
					'VALUE' => $currencyValue,
				],
			];
		}
	}

	return $row;
}