• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/discountcouponsmanagerbase.php
  • Класс: BitrixSaleDiscountCouponsManagerBase
  • Вызов: DiscountCouponsManagerBase::clearByOrder
static function clearByOrder($order)
{
	if (!self::isSuccess())
		return false;
	$order = (int)$order;
	if ($order <= 0)
		return false;
	$userId = 0;

	$registry = Registry::getInstance(static::getRegistryType());

	/** @var OrderBase $orderClassName */
	$orderClassName = $registry->getOrderClassName();

	$orderIterator = $orderClassName::getList([
		'select' => ['ID', 'USER_ID'],
		'filter' => ['=ID' => $order]
	]);
	if ($orderData = $orderIterator->fetch())
		$userId = (int)$orderData['USER_ID'];
	unset($orderData, $orderIterator);
	if ($userId <= 0)
		return false;
	self::initUseMode(self::MODE_ORDER, array('userId' => $userId, 'orderId' => $order));
	if (!self::isSuccess())
		return false;
	self::$coupons = array();
	self::saveToStorage();

	return true;
}