{ $arResult['STATUS'] = 'ERROR'; $arResult['MESSAGE'] = GetMessage('BT_CAT_TOOLS_GEN_CPN_ERR_RIGHTS'); $boolFlag = false; } } if (true == $boolFlag) { require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/catalog/include.php"); require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/catalog/prolog.php"); do { $boolCheck = true; $strCoupon = CatalogGenerateCoupon(); $arFilter = array("COUPON" => substr($strCoupon, 0, 32)); $rsCoupons = CCatalogDiscountCoupon::GetList(array(),$arFilter, false, array('nTopCount' => 1),array('ID', 'COUPON')); if ($arCoupon = $rsCoupons->Fetch()) { $boolCheck = false; } } while (!$boolCheck); $arResult['RESULT'] = $strCoupon; } echo CUtil::PhpToJSObject($arResult); ?>
$bVarsFromForm = true; $DB->Rollback(); } else { $DB->Commit(); if ($boolCouponAdd) { for ($i = 0; $i < $arCouponFields['COUPON_COUNT']; $i++) { $CID = CCatalogDiscountCoupon::Add( array( "DISCOUNT_ID" => $ID, "ACTIVE" => "Y", "ONE_TIME" => $arCouponFields['COUPON_TYPE'], "COUPON" => CatalogGenerateCoupon(), "DATE_APPLY" => false ) ); $cRes = ($CID > 0); if (!$cRes) { if ($ex = $APPLICATION->GetException()) $errorMessage .= $ex->GetString()."<br>"; else $errorMessage .= GetMessage('BT_CAT_DISCOUNT_EDIT_ERR_COUPON_ADD')."<br>"; $bVarsFromForm = true; } } }
die; } } else { $DB->StartTransaction(); $arFields = array("ONE_TIME" => isset($_POST['ONE_TIME']) ? $_POST['ONE_TIME'] : '', "COUNT" => intval(isset($_POST['COUNT']) ? $_POST['COUNT'] : 0)); if (!array_key_exists($arFields['ONE_TIME'], $arTypeList)) { $errorMessage .= GetMessage('BT_CAT_DISC_SUBCOUPON_ERR_COUPON_TYPE_BAD') . "<br>"; $bVarsFromForm = true; } if (0 >= $arFields['COUNT']) { $errorMessage .= GetMessage('BT_CAT_DISC_SUBCOUPON_ERR_COUNT_BAD') . "<br>"; $bVarsFromForm = true; } if (!$bVarsFromForm) { for ($i = 0; $i < $arFields['COUNT']; $i++) { $CID = CCatalogDiscountCoupon::Add(array("DISCOUNT_ID" => $intDiscountID, "ACTIVE" => "Y", "ONE_TIME" => $arFields['ONE_TIME'], "COUPON" => CatalogGenerateCoupon(), "DATE_APPLY" => false)); $cRes = $CID > 0; if (!$cRes) { if ($ex = $APPLICATION->GetException()) { $errorMessage .= $ex->GetString() . "<br>"; } else { $errorMessage .= GetMessage('BT_CAT_DISCOUNT_EDIT_ERR_COUPON_ADD') . "<br>"; } $bVarsFromForm = true; break; } } } if (!$bVarsFromForm) { $DB->Commit(); ?>
$arResult['STATUS'] = 'ERROR'; $arResult['MESSAGE'] = Loc::getMessage('BT_CAT_TOOLS_GEN_CPN_ERR_AUTH'); $boolFlag = false; } } if ($boolFlag) { if (!check_bitrix_sessid()) { $arResult['STATUS'] = 'ERROR'; $arResult['MESSAGE'] = Loc::getMessage('BT_CAT_TOOLS_GEN_CPN_ERR_SESSION'); $boolFlag = false; } } if ($boolFlag) { if (!$USER->CanDoOperation('catalog_discount')) { $arResult['STATUS'] = 'ERROR'; $arResult['MESSAGE'] = Loc::getMessage('BT_CAT_TOOLS_GEN_CPN_ERR_RIGHTS'); $boolFlag = false; } } if ($boolFlag) { if (Loader::includeModule('catalog')) { do { $strCoupon = substr(CatalogGenerateCoupon(), 0, 32); $boolCheck = !CCatalogDiscountCoupon::IsExistCoupon($strCoupon); } while (!$boolCheck); $arResult['RESULT'] = $strCoupon; } else { $arResult['STATUS'] = 'ERROR'; } } echo CUtil::PhpToJSObject($arResult);