public function OnCurrencyDelete($Currency) { global $DB; if (empty($Currency)) { return false; } $dbDiscounts = CCatalogDiscount::GetList(array(), array("CURRENCY" => $Currency), false, false, array("ID")); while ($arDiscounts = $dbDiscounts->Fetch()) { CCatalogDiscount::Delete($arDiscounts["ID"]); } return true; }
if ($_REQUEST['action_target'] == 'selected') { $arID = array(); $dbResultList = CCatalogDiscount::GetList(array($by => $order), $arFilter, false, false, array("ID")); while ($arResult = $dbResultList->Fetch()) { $arID[] = $arResult['ID']; } } foreach ($arID as $ID) { if (strlen($ID) <= 0) { continue; } switch ($_REQUEST['action']) { case "delete": @set_time_limit(0); $DB->StartTransaction(); if (!CCatalogDiscount::Delete($ID)) { $DB->Rollback(); if ($ex = $APPLICATION->GetException()) { $lAdmin->AddGroupError($ex->GetString(), $ID); } else { $lAdmin->AddGroupError(str_replace("#ID#", $ID, GetMessage("ERROR_DELETE_DISCOUNT")), $ID); } } else { $DB->Commit(); } break; case "activate": case "deactivate": $arFields = array("ACTIVE" => $_REQUEST['action'] == "activate" ? "Y" : "N"); if (!CCatalogDiscount::Update($ID, $arFields)) { if ($ex = $APPLICATION->GetException()) {