- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/compatible/discountcompatibility.php
- Класс: BitrixSaleCompatibleDiscountCompatibility
- Вызов: DiscountCompatibility::getStepResult
static function getStepResult($order)
{
$publicMode = self::usedByClient();
$result = array();
$stepResult = &$order['DISCOUNT_RESULT'];
if (!empty($stepResult['DELIVERY']) && is_array($stepResult['DELIVERY']))
{
$result['DELIVERY'] = array(
'APPLY' => 'Y',
'DELIVERY_ID' => (isset($order['DELIVERY_ID']) ? $order['DELIVERY_ID'] : false),
'SHIPMENT_CODE' => (isset($order['SHIPMENT_CODE']) ? $order['SHIPMENT_CODE'] : false),
'DESCR' => SaleOrderDiscountManager::formatArrayDescription($stepResult['DELIVERY']),
'DESCR_DATA' => $stepResult['DELIVERY'],
'ACTION_BLOCK_LIST' => array_keys($stepResult['DELIVERY'])
);
if (is_array($result['DELIVERY']['DESCR']))
$result['DELIVERY']['DESCR'] = implode(', ', $result['DELIVERY']['DESCR']);
}
if (!empty($stepResult['BASKET']) && is_array($stepResult['BASKET']))
{
if (!isset($result['BASKET']))
$result['BASKET'] = array();
foreach ($stepResult['BASKET'] as $basketCode => $basketResult)
{
$code = ($publicMode ? $order['BASKET_ITEMS'][$basketCode]['ID'] : $basketCode);
$result['BASKET'][$code] = array(
'APPLY' => 'Y',
'DESCR' => SaleOrderDiscountManager::formatArrayDescription($basketResult),
'DESCR_DATA' => $basketResult,
'MODULE' => $order['BASKET_ITEMS'][$basketCode]['MODULE'],
'PRODUCT_ID' => $order['BASKET_ITEMS'][$basketCode]['PRODUCT_ID'],
'BASKET_ID' => $code,
'ACTION_BLOCK_LIST' => array_keys($basketResult)
);
if (is_array($result['BASKET'][$code]['DESCR']))
$result['BASKET'][$code]['DESCR'] = implode(', ', $result['BASKET'][$code]['DESCR']);
}
unset($code, $basketCode, $basketResult);
}
unset($stepResult);
return $result;
}