• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/orderdiscountmanager.php
  • Класс: BitrixSaleOrderDiscountManager
  • Вызов: OrderDiscountManager::loadResultFromDatabase
static function loadResultFromDatabase($order, $extendedMode = false, $basketList = false, $basketData = array())
{
	if (!is_array($basketList))
		$basketList = [];
	if (!is_array($basketData))
		$basketData = [];
	$result = parent::loadResultFromDb($order, $basketList, $basketData);

	/* for compatibility only */
	$data = $result->getData();

	$data['BASKET'] = [];
	$data['ORDER'] = [];
	$data['DISCOUNT_MODULES'] = [];
	$data['DATA'] = [];
	if (isset($data['APPLY_BLOCKS'][0]))
	{
		$data['BASKET'] = $data['APPLY_BLOCKS'][0]['BASKET'];
		$data['ORDER'] = $data['APPLY_BLOCKS'][0]['ORDER'];
	}
	if (!empty($data['DISCOUNT_LIST']))
	{
		foreach (array_keys($data['DISCOUNT_LIST']) as $index)
		{
			if (empty($data['DISCOUNT_LIST'][$index]['MODULES']))
				continue;
			$data['DISCOUNT_MODULES'][$index] = $data['DISCOUNT_LIST'][$index]['MODULES'];
		}
		unset($index);
	}
	$data['DATA']['STORED_ACTION_DATA'] = $data['STORED_ACTION_DATA'];
	unset($data['STORED_ACTION_DATA']);

	$result->setData($data);

	return $result;
}