}
IncludeModuleLangFile(__FILE__);
$aTabs = array(array("DIV" => "edit1", "TAB" => GetMessage("CLO_STORAGE_EDIT_TAB"), "ICON" => "main_user_edit", "TITLE" => GetMessage("CLO_STORAGE_EDIT_TAB_TITLE")), array("DIV" => "edit2", "TAB" => GetMessage("CLO_STORAGE_EDIT_TAB2"), "ICON" => "main_user_edit", "TITLE" => GetMessage("CLO_STORAGE_EDIT_TAB2_TITLE")));
$tabControl = new CAdminTabControl("tabControl", $aTabs);
$ID = intval($_REQUEST["ID"]);
// Id of the edited record
$bVarsFromForm = false;
$message = null;
if ($_SERVER["REQUEST_METHOD"] === "POST" && check_bitrix_sessid()) {
    if (isset($_REQUEST["save"]) || isset($_REQUEST["apply"])) {
        $ob = new CCloudStorageBucket($ID);
        $arFields = array("ACTIVE" => $_POST["ACTIVE"] === "Y" ? "Y" : "N", "READ_ONLY" => $_POST["READ_ONLY"] === "Y" ? "Y" : "N", "SORT" => $_POST["SORT"], "SERVICE_ID" => $_POST["SERVICE_ID"], "BUCKET" => $_POST["BUCKET"], "LOCATION" => $_POST["LOCATION"][$_POST["SERVICE_ID"]], "SETTINGS" => $_POST["SETTINGS"][$_POST["SERVICE_ID"]], "CNAME" => $_POST["CNAME"], "FILE_RULES" => CCloudStorageBucket::ConvertPOST($_POST));
        if ($ID > 0) {
            $res = $ob->Update($arFields);
        } else {
            $res = $ob->Add($arFields);
        }
        if ($res > 0) {
            if (isset($_REQUEST["apply"])) {
                LocalRedirect("/bitrix/admin/clouds_storage_edit.php?ID=" . $res . "&lang=" . LANGUAGE_ID . "&" . $tabControl->ActiveTabParam());
            } else {
                LocalRedirect("/bitrix/admin/clouds_storage_list.php?lang=" . LANGUAGE_ID);
            }
        } else {
            $e = $APPLICATION->GetException();
            if (is_object($e)) {
                $message = new CAdminMessage(GetMessage("CLO_STORAGE_EDIT_SAVE_ERROR"), $e);
            }
            $bVarsFromForm = true;
        }
    } elseif (isset($_REQUEST["delete"]) && $ID > 1) {