• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/discountcouponsmanagerbase.php
  • Класс: BitrixSaleDiscountCouponsManagerBase
  • Вызов: DiscountCouponsManagerBase::verifyApplied
static function verifyApplied()
{
	$result = new SaleResult();

	if (
		self::$useMode == self::MODE_SYSTEM
		||
		!self::isEntered()
	)
		return $result;

	$appliedCoupons = self::filterCoupons(['STATUS' => self::STATUS_APPLYED, 'SAVED' => 'N'], true);
	if (!empty($appliedCoupons))
	{
		$badCoupons = [];
		$appliedCoupons = array_keys($appliedCoupons);
		foreach ($appliedCoupons as $coupon)
		{
			$row = self::getData($coupon, true);
			if ($row['STATUS'] == self::STATUS_NOT_FOUND || $row['STATUS'] == self::STATUS_FREEZE)
				$badCoupons[$coupon] = $row;
		}
		unset($row, $coupon);
		if (!empty($badCoupons))
		{
			self::fillCouponHints($badCoupons);
			$errorData = [];
			foreach ($badCoupons as $row)
				$errorData[$row['COUPON']] = implode(', ', $row['CHECK_CODE_TEXT']);
			unset($row);
			$result->addError(new MainError(
				Loc::getMessage('BX_SALE_DCM_COUPONS_VERIFY_ERR'),
				'COUPON',
				$errorData
			));
			unset($errorData);
		}
		unset($badCoupons);
	}
	unset($appliedCoupons);

	return $result;
}