• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/discountbase.php
  • Класс: BitrixSaleDiscountBase
  • Вызов: DiscountBase::buildFromBasket
static function buildFromBasket(BasketBase $basket, ContextBaseContext $context)
{
	if ($basket->getOrder())
	{
		throw new MainInvalidOperationException(
			'Could not build discounts from basket which has the order. You have to use buildFromOrder.'
		);
	}

	if ($basket->count() == 0)
		return null;

	$instanceIndex = static::getInstanceIndexByBasket($basket, $context);
	$discount = static::getInstance($instanceIndex);
	$discount->basket = $basket;
	$discount->context = $context;
	$discount->initInstanceData();
	unset($discount);

	return static::getInstance($instanceIndex);
}