$arFilter["EMAIL"] = $filter_email; } if (strlen($filter_inn) > 0) { $arFilter["INN"] = $filter_inn; } if (strlen($filter_kpp) > 0) { $arFilter["KPP"] = $filter_kpp; } if ($lAdmin->EditAction() && !$bReadOnly) { foreach ($_POST['FIELDS'] as $ID => $arFields) { $ID = (int) $ID; if ($ID <= 0 || !$lAdmin->IsUpdated($ID)) { continue; } $DB->StartTransaction(); if (!CCatalogContractor::Update($ID, $arFields)) { if ($ex = $APPLICATION->GetException()) { $lAdmin->AddUpdateError($ex->GetString(), $ID); } else { $lAdmin->AddUpdateError(GetMessage("ERROR_UPDATING_REC") . " (" . $arFields["ID"] . ", " . $arFields["TITLE"] . ", " . $arFields["SORT"] . ")", $ID); } $DB->Rollback(); } else { $DB->Commit(); } } } if (($arID = $lAdmin->GroupAction()) && !$bReadOnly) { if ($_REQUEST['action_target'] == 'selected') { $arID = array(); $dbResultList = CCatalogContractor::GetList(array(), $arFilter, false, false, array('ID'));
ClearVars(); $errorMessage = ""; $bVarsFromForm = false; $ID = IntVal($_REQUEST["ID"]); $typeReadOnly = false; $userId = intval($USER->GetID()); if ($_SERVER["REQUEST_METHOD"] == "POST" && check_bitrix_sessid() && strlen($_REQUEST["Update"]) > 0 && !$bReadOnly) { if ($PERSON_TYPE == CONTRACTOR_INDIVIDUAL) { $INN = $KPP = $COMPANY = ''; } $PERSON_NAME = $_REQUEST["PERSON_NAME"] == GetMessage("CONTRACTOR_NAME") ? '' : $_REQUEST["PERSON_NAME"]; $PERSON_LASTNAME = $_REQUEST["PERSON_LASTNAME"] == GetMessage("CONTRACTOR_LAST_NAME") ? '' : $_REQUEST["PERSON_LASTNAME"]; $PERSON_MIDDLENAME = $_REQUEST["PERSON_MIDDLENAME"] == GetMessage("CONTRACTOR_SECOND_NAME") ? '' : $_REQUEST["PERSON_MIDDLENAME"]; $arFields = array("PERSON_TYPE" => $PERSON_TYPE, "SITE_ID" => SITE_ID, "PERSON_NAME" => $PERSON_NAME, "PERSON_LASTNAME" => $PERSON_LASTNAME, "PERSON_MIDDLENAME" => $PERSON_MIDDLENAME, "EMAIL" => $_REQUEST["EMAIL"], "PHONE" => $_REQUEST["PHONE"], "POST_INDEX" => $_REQUEST["POST_INDEX"], "COUNTRY" => $_REQUEST["COUNTRY"], "CITY" => $XML_ID, "INN" => $INN, "KPP" => $KPP, "COMPANY" => $COMPANY, "ADDRESS" => $ADDRESS, "CREATED_BY" => $userId, "MODIFIED_BY" => $userId); $DB->StartTransaction(); if (strlen($errorMessage) == 0 && $ID > 0 && ($res = CCatalogContractor::Update($ID, $arFields))) { $ID = $res; $DB->Commit(); if (strlen($_REQUEST["apply"]) <= 0) { LocalRedirect("/bitrix/admin/cat_contractor_list.php?lang=" . LANG . "&" . GetFilterParams("filter_", false)); } else { LocalRedirect("/bitrix/admin/cat_contractor_edit.php?lang=" . LANG . "&ID=" . $ID . "&" . GetFilterParams("filter_", false)); } } elseif (strlen($errorMessage) == 0 && $ID == 0 && ($res = CCatalogContractor::Add($arFields))) { $ID = $res; $DB->Commit(); if (strlen($_REQUEST["apply"]) <= 0) { LocalRedirect("/bitrix/admin/cat_contractor_list.php?lang=" . LANG . "&" . GetFilterParams("filter_", false)); } else { LocalRedirect("/bitrix/admin/cat_contractor_edit.php?lang=" . LANG . "&ID=" . $ID . "&" . GetFilterParams("filter_", false)); }