Fix #2333 add lock icon in menu list to indicate that access is restricted

This commit is contained in:
Kijin Sung 2024-05-04 21:17:00 +09:00
parent 0a459eb528
commit ebae28d5d3
2 changed files with 20 additions and 4 deletions

View file

@ -2174,6 +2174,7 @@ class MenuAdminController extends Menu
"href" => (%s ? %s : ""),
"url" => (%s ? %s : ""),
"is_shortcut" => %s,
"is_restricted" => %s,
"icon" => %s,
"class" => %s,
"desc" => %s,
@ -2196,6 +2197,7 @@ class MenuAdminController extends Menu
$group_check_code,
var_export($url, true),
var_export($is_shortcut, true),
var_export(!empty($node->group_srls), true),
var_export($icon, true),
var_export($class, true),
var_export($desc, true),

View file

@ -1190,12 +1190,27 @@ function createTreeMarkup(aNode, sParentSrl, sMenuTree, sMenuTreeNode){
if(sIsStartModule){
sTextWithIcons += " ${h}";
}
if(nNodeType == 2 && aNode[i].is_restricted){
sTextWithIcons += " ${r}";
}
if(htNodeInfo[sNodeSrl].sModuleType === "_SHORTCUT"){
sTextWithIcons += " ${s}";
nNodeType = 3;
}
sResult += $.tmpl( sMenuTreeNode, {MenuTitleWithHome:sTextWithIcons,MenuTitle:sText,eMenuTitle:sText.replace(/\"/g, "\\\""),MenuId:sNodeSrl,MenuUrl:sURL,NodeType:nNodeType,SubTree:sSubTree,Target:sTargetPanel} ).get()[0].outerHTML.replace("${h}", "<i class='x_icon-home' title='" + aNode[i].is_start_module_of + "'>[HOME]</i>").replace("${s}", "<i class='xi-link' title='Shortcut'></i>");
sResult += $.tmpl(sMenuTreeNode, {
MenuTitleWithHome: sTextWithIcons,
MenuTitle: sText,
eMenuTitle: sText.replace(/\"/g, "\\\""),
MenuId: sNodeSrl,
MenuUrl: sURL,
NodeType: nNodeType,
SubTree: sSubTree,
Target: sTargetPanel
}).get()[0].outerHTML
.replace("${h}", "<i class='x_icon-home' title='" + aNode[i].is_start_module_of + "'>[HOME]</i>")
.replace("${r}", "<i class='xi-lock' title='Restricted'></i>")
.replace("${s}", "<i class='xi-link' title='Shortcut'></i>");
}
return $.tmpl( sMenuTree, {Nodes:sResult} ).get()[0].outerHTML;
@ -2421,9 +2436,8 @@ jQuery(function($){
};
jQuery.exec_json("menu.procMenuAdminUpdateAuth", htParam, function(htData){
//alert(xe.lang.success_saved);//.//
$.xeMsgBox.alert(xe.lang.success_saved);
$('#auth').hide();
$._xeAdminVar.sSelectOnload = $._xeAdminVar.sSelectedMenuSrl;
loadSiteMap();
});
});
function readPermValue($select){