- Модуль: 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;
}