- Модуль: 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;
}