if (($arID = $lAdmin->GroupAction()) && !$bReadOnly) { if ($_REQUEST['action_target'] == 'selected') { $arID = array(); $dbResultList = CCatalogVat::GetListEx(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": $DB->StartTransaction(); if (!CCatalogVat::Delete($ID)) { $DB->Rollback(); if ($ex = $APPLICATION->GetException()) { $lAdmin->AddGroupError($ex->GetString(), $ID); } else { $lAdmin->AddGroupError(str_replace("#ID#", $ID, GetMessage("ERROR_DELETE_VAT")), $ID); } } else { $DB->Commit(); } break; case "activate": case "deactivate": $arFields = array("ACTIVE" => $_REQUEST['action'] == "activate" ? "Y" : "N"); if (!CCatalogVat::Update($ID, $arFields)) { if ($ex = $APPLICATION->GetException()) {
} else { $errorMsg = GetMessage('CRM_VAT_ADD_UNKNOWN_ERROR'); } } } if (strlen($errorMsg) <= 0) { LocalRedirect(isset($_POST['apply']) ? CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_VAT_EDIT'], array('vat_id' => $vatID)) : CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_VAT_LIST'], array('vat_id' => $vatID))); } else { ShowError($errorMsg); $arVat = $fields; } } elseif ($_SERVER['REQUEST_METHOD'] == 'GET' && isset($_GET['delete'])) { $vatID = isset($arParams['VAT_ID']) ? intval($arParams['VAT_ID']) : 0; $arVat = $vatID > 0 ? CCrmVat::GetByID($vatID) : null; if ($arVat) { if (!CCatalogVat::Delete($vatID)) { ShowError(GetMessage('CRM_VAT_DELETE_UNKNOWN_ERROR')); } } LocalRedirect(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_VAT_LIST'], array())); } } $arResult['FIELDS'] = array(); if (strlen($arParams['VAT_ID']) > 0) { $arResult['FIELDS']['tab_1'][] = array('id' => 'ID', 'name' => GetMessage('CRM_VAT_FIELD_ID'), 'value' => $vatID, 'type' => 'label'); } $arResult['FIELDS']['tab_1'][] = array('id' => 'NAME', 'name' => GetMessage('CRM_VAT_FIELD_NAME'), 'value' => htmlspecialcharsbx($arVat['NAME']), 'type' => 'text'); $arResult['FIELDS']['tab_1'][] = array('id' => 'RATE', 'name' => GetMessage('CRM_VAT_FIELD_RATE'), 'value' => floatval($arVat['RATE']), 'type' => 'text'); $arResult['FIELDS']['tab_1'][] = array('id' => 'ACTIVE', 'name' => GetMessage('CRM_VAT_FIELD_ACTIVE'), 'value' => $arVat['ACTIVE'] == 'Y', 'type' => 'checkbox'); $arResult['FIELDS']['tab_1'][] = array('id' => 'C_SORT', 'name' => GetMessage('CRM_VAT_FIELD_C_SORT'), 'value' => intval($arVat['C_SORT']), 'type' => 'text'); $this->IncludeComponentTemplate();
public static function delete($params) { if (!CModule::IncludeModule('catalog')) { throw new RestException('The Commercial Catalog module is not installed.'); } global $DB, $USER; $CrmPerms = new CCrmPerms($USER->GetID()); if (!$CrmPerms->HavePerm('CONFIG', BX_CRM_PERM_CONFIG, 'WRITE')) { throw new RestException('Access denied.'); } $ID = CCrmInvoiceRestUtil::getParamScalar($params, 'id', 0); if ($ID <= 0) { throw new RestException('Invalid identifier.'); } $DB->StartTransaction(); $catalogVat = new CCatalogVat(); $bDeleted = $catalogVat->Delete($ID); if ($bDeleted) { $DB->Commit(); } else { $DB->Rollback(); throw new RestException('Error on deleting VAT rate.'); } return $bDeleted; }