CanDoOperation('edit_other_settings')) $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); IncludeModuleLangFile(__FILE__); $ID = intval($_REQUEST['ID'] ?? 0); $hotKeyCodes = new CHotKeysCode; $str_IS_CUSTOM = true; $str_ID = ''; $str_NAME = ''; $str_CODE = ''; $str_CLASS_NAME = ''; $str_COMMENTS = ''; $str_TITLE_OBJ = ''; $str_URL = ''; $errMess = null; $bVarsFromForm = false; if($_SERVER['REQUEST_METHOD']=="POST" && (!empty($_POST['save']) || !empty($_POST['apply'])) && check_bitrix_sessid()) { $arFields = array( "CLASS_NAME"=>$_REQUEST["CLASS_NAME"] ?? '', "CODE"=>$_REQUEST["CODE"] ?? '', "NAME"=>$_REQUEST["NAME"] ?? '', "COMMENTS" => $_REQUEST["COMMENTS"] ?? '', "TITLE_OBJ"=>$_REQUEST["TITLE_OBJ"] ?? '', "URL"=>$_REQUEST["URL"] ?? '', ); if($ID>0) $res = $hotKeyCodes->Update($ID, $arFields); else { $ID = $hotKeyCodes->Add($arFields); $res = ($ID>0); } if($res) { if(isset($_POST['apply'])) LocalRedirect("hot_keys_edit.php?ID=".$ID."&lang=".LANG."&applied=ok"); else LocalRedirect(!empty($_REQUEST["addhk"]) ? $_REQUEST["addhk"] : "hot_keys_list.php?lang=" . LANG); } else { if($e = $APPLICATION->GetException()) $errMess = new CAdminMessage(GetMessage("HK_EDIT_ERROR"),$e); else $errMess = new CAdminMessage(GetMessage("HK_EDIT_ERROR")); $bVarsFromForm = true; } } if($ID>0) { $hk = $hotKeyCodes->GetByID($ID); if(!($hk_arr = $hk->ExtractFields("str_"))) $ID=0; } if($bVarsFromForm) $DB->InitTableVarsForEdit("b_hot_keys_code", "", "str_"); $sDocTitle = ($ID>0? GetMessage("HK_EDIT_RECORD", array("#ID#"=>$ID)) : GetMessage("HK_NEW_RECORD")); $APPLICATION->SetTitle($sDocTitle); require($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/prolog_admin_after.php"); $aMenu = array( array( "TEXT"=>GetMessage("HK_LIST"), "TITLE"=>GetMessage("HK_LIST_TITLE"), "LINK"=>"hot_keys_list.php?lang=".LANG, "ICON"=>"btn_list", ) ); if($ID>0) { $aMenu[] = array("SEPARATOR"=>"Y"); $aMenu[] = array( "TEXT"=>GetMessage("HK_ADD"), "TITLE"=>GetMessage("HK_ADD_TITLE"), "LINK"=>"hot_keys_edit.php?lang=".LANG, "ICON"=>"btn_new", ); if($str_IS_CUSTOM) $aMenu[] = array( "TEXT"=>GetMessage("HK_DELETE"), "TITLE"=>GetMessage("HK_DELETE_TITLE"), "LINK"=>"javascript:if(confirm('".GetMessage("HK_DEL_CONFIRM")."')) window.location='hot_keys_list.php?ID=".$ID."&action=delete&lang=".LANG."&".bitrix_sessid_get()."';", "ICON"=>"btn_delete", ); } $context = new CAdminContextMenu($aMenu); $context->Show(); if (isset($_GET["applied"]) && $_GET["applied"]=="ok") CAdminMessage::ShowMessage(array("MESSAGE"=>GetMessage("HK_EDIT_SUCCESS"), "TYPE"=>"OK")); if($errMess) echo $errMess->Show(); $aTabs = array( array("DIV" => "edit1", "TAB" => GetMessage("HK_EDIT_TAB"), "TITLE"=>GetMessage("HK_EDIT_TAB_TITLE")), ); $tabControl = new CAdminTabControl("tabControl", $aTabs); ?>