• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/compatible/discountcompatibility.php
  • Класс: BitrixSaleCompatibleDiscountCompatibility
  • Вызов: DiscountCompatibility::getStepResultOld
static function getStepResultOld($currentOrder)
{
	$publicMode = self::usedByClient();
	$result = array();
	if (isset(self::$previousOrderData['PRICE_DELIVERY']) && isset($currentOrder['PRICE_DELIVERY']))
	{
		if (self::$previousOrderData['PRICE_DELIVERY'] != $currentOrder['PRICE_DELIVERY'])
		{
			$descr = DiscountResultCompatibleFormat::createResultDescription(
				$currentOrder['PRICE_DELIVERY'],
				self::$previousOrderData['PRICE_DELIVERY'],
				self::$previousOrderData['CURRENCY']
			);
			$result['DELIVERY'] = array(
				'APPLY' => 'Y',
				'DELIVERY_ID' => (isset($currentOrder['DELIVERY_ID']) ? $currentOrder['DELIVERY_ID'] : false),
				'SHIPMENT_CODE' => (isset($currentOrder['SHIPMENT_CODE']) ? $currentOrder['SHIPMENT_CODE'] : false),
				'DESCR' => implode(', ', DiscountFormatter::formatList($descr)),
				'DESCR_DATA' => $descr
			);
			unset($descr);
		}
	}
	if (!empty(self::$previousOrderData['BASKET_ITEMS']) && !empty($currentOrder['BASKET_ITEMS']))
	{
		foreach (self::$previousOrderData['BASKET_ITEMS'] as $basketCode => $item)
		{
			if (!isset($currentOrder['BASKET_ITEMS'][$basketCode]))
				continue;
			$code = ($publicMode ? $currentOrder['BASKET_ITEMS'][$basketCode]['ID'] : $basketCode);
			if ($item['PRICE'] != $currentOrder['BASKET_ITEMS'][$basketCode]['PRICE'])
			{
				if (!isset($result['BASKET']))
					$result['BASKET'] = array();
				$descr = DiscountResultCompatibleFormat::createResultDescription(
					$currentOrder['BASKET_ITEMS'][$basketCode]['PRICE'],
					$item['PRICE'],
					self::$previousOrderData['CURRENCY']
				);
				$result['BASKET'][$code] = array(
					'APPLY' => 'Y',
					'DESCR' => implode(', ', DiscountFormatter::formatList($descr)),
					'DESCR_DATA' => $descr,
					'MODULE' => $currentOrder['BASKET_ITEMS'][$basketCode]['MODULE'],
					'PRODUCT_ID' => $currentOrder['BASKET_ITEMS'][$basketCode]['PRODUCT_ID'],
					'BASKET_ID' => $code
				);
				unset($descr);
			}
		}
	}
	return $result;
}