⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 manage_rights.jsp

📁 java 写的一个新闻发布系统
💻 JSP
📖 第 1 页 / 共 2 页
字号:
<%@ page language="java" %><%@ page import="java.util.*" %><%@ page import="org.jahia.utils.JahiaTools" %><%@ taglib uri="JahiaLib" prefix="jahia" %><%    HashMap engineMap   = (HashMap)request.getAttribute("org.jahia.engines.EngineHashMap");        ArrayList aclEntries = (ArrayList)engineMap.get("aclEntries");    String selectUsrGrp = (String)engineMap.get("selectUsrGrp");    Integer inheritance = (Integer)engineMap.get("inheritance");%><!-- FIXME : The following javascript file path are hardcoded. --><script language="javascript" src="<jahia:serverHttpPath />/jsp/jahia/javascript/selectbox.js"></script><script language="javascript" src="<jahia:serverHttpPath />/jsp/jahia/javascript/checkbox.js"></script><!--#HELP# <script language="javascript" src="<jahia:serverHttpPath />/jsp/jahia/javascript/help.js"></script> --><script language="javascript">if (screen.availHeight <= 600) {    window.moveTo(0,0);    window.resizeTo(640, screen.availHeight);} else {    window.resizeTo(640, 740);}</script><script language="javascript">// Selection box option value bit positionvar vAddedACL = 0;var vResetChildPerm = 1;var vRemACLEntry = 2;var vRightChange = 3;var vDefaultPerm = 8;var vDefaultInherit = 11;var vName = 12;var vNameSize = 10;var vKey = 23;var nbOfPerm = 4;// Selection box option text bit positionvar tPerm = 2;var tPermr = tPerm;var tPermw = tPerm + 1;var tPermA = tPerm + 2;var tInherit = 5;var tName = 14;var tNameSize = 10;var usrgrpname = new Array();var index = 0;// FIXME : This string is destinated to initialize the forst option of the select box.// Netscape 6.2 does not recognize these space sequence.var emptyText = "\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20" +                "\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20" +                "\x20\x20\x20\x20\x20";// Warning !! This variable has to be initialize to another formular if this// javascript file is used to another context !!!var formular = document.mainForm;function canSetPermissions(){    var i = formular.aclEntries.selectedIndex;    var itemSelected = formular.aclEntries.options[i];    if (itemSelected.value == "null") {        disableAllSettings();        return;    }     if (itemSelected.text.charAt(tInherit) == "*") {        formular.adminPerm[0].disabled = true;        formular.adminPerm[1].disabled = true;        formular.writePerm[0].disabled = true;        formular.writePerm[1].disabled = true;        formular.readPerm[0].disabled = true;        formular.readPerm[1].disabled = true;        formular.cutRestInherit.checked = false;        formular.cutRestInherit.disabled = false;        formular.remACLEntry.disabled = true;    } else {        formular.adminPerm[0].disabled = false;        formular.adminPerm[1].disabled = false;        formular.writePerm[0].disabled = false;        formular.writePerm[1].disabled = false        formular.readPerm[0].disabled = false;        formular.readPerm[1].disabled = false;        formular.cutRestInherit.checked = true;        if (itemSelected.value.charAt(vDefaultInherit) == "*") {            formular.cutRestInherit.disabled = false;            formular.remACLEntry.disabled = true;        } else {            formular.cutRestInherit.disabled = true;            formular.remACLEntry.disabled = false;        }    }    //if (itemSelected.value.charAt(vResetChildPerm) == "1")        //formular.resetChild.checked = true;    //else        //formular.resetChild.checked = false;    if (itemSelected.value.charAt(vRemACLEntry) == "1") {        formular.remACLEntry.checked = true;        //formular.resetChild.disabled = true;    } else {        formular.remACLEntry.checked = false;        //formular.resetChild.disabled = false;    }    // bit #0(diff(bit #2(asc('A')), bit #2(asc('-')))) <==> {0, 1}    var adA = formular.aclEntries[i].text.charCodeAt(tPermA) >> 2 & 1;    formular.adminPerm[adA].checked = true;    // bit #0(diff(bit #1(inv(asc('w'))), bit #1(asc('-')))) <==> {0, 1}    var adw = ~formular.aclEntries[i].text.charCodeAt(tPermw) >> 1 & 1;    formular.writePerm[adw].checked = true;    // bit #0(diff(bit #0(asc('r')), bit #0(asc('-')))) <==> {0, 1}    var adr = formular.aclEntries[i].text.charCodeAt(tPermr) & 1;    formular.readPerm[adr].checked = true;    unselectAllSelectBox(formular.aclEntries);    formular.aclEntries.options[i].selected = true;}function disableAllSettings() {    formular.adminPerm[0].disabled = true;    formular.adminPerm[1].disabled = true;    formular.writePerm[0].disabled = true;    formular.writePerm[1].disabled = true;    formular.readPerm[0].disabled = true;    formular.readPerm[1].disabled = true;    formular.adminPerm[1].checked = true;    formular.writePerm[1].checked = true;    formular.readPerm[1].checked = true;    formular.cutRestInherit.disabled = true;    formular.remACLEntry.disabled = true;    //formular.resetChild.disabled = true;}function denyAdmin(){    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    option.text = option.text.substr(0, tPermA) + "-" + option.text.substr(tPermA + 1);    option.value = option.value.substr(0, vRightChange) + "1" + option.value.substr(vRightChange + 1);}function allowAdmin(){    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    option.text = option.text.substr(0, tPermA) + "A" + option.text.substr(tPermA + 1);    option.value = option.value.substr(0, vRightChange) + "1" + option.value.substr(vRightChange + 1);    formular.readPerm[0].checked = true;    allowRead();    // The following lines can be considered as default values.    //formular.writePerm[0].checked = true;    //allowWrite();}function denyWrite(){    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    option.text = option.text.substr(0, tPermw) + "-" + option.text.substr(tPermw + 1);    option.value = option.value.substr(0, vRightChange) + "1" + option.value.substr(vRightChange + 1);}function allowWrite(){    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    option.text = option.text.substr(0, tPermw) + "w" + option.text.substr(tPermw + 1);    option.value = option.value.substr(0, vRightChange) + "1" + option.value.substr(vRightChange + 1);    formular.readPerm[0].checked = true;    allowRead();}function denyRead(){    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    option.text = option.text.substr(0, tPermr) + "-" + option.text.substr(tPermr + 1);    option.value = option.value.substr(0, vRightChange) + "1" + option.value.substr(vRightChange + 1);    formular.adminPerm[1].checked = true;    denyAdmin();    formular.writePerm[1].checked = true;    denyWrite();}function allowRead(){    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    option.text = option.text.substr(0, tPermr) + "r" + option.text.substr(tPermr + 1);    option.value = option.value.substr(0, vRightChange) + "1" + option.value.substr(vRightChange + 1);}function copyPermissions(option) {    if (option.value.charAt(vDefaultInherit) == "*" &&         option.text.charAt(tInherit) == "*") {        option.text = option.text.substr(0, tInherit) + "%" +                       option.text.substr(tInherit + 1);        option.value = option.value.substr(0, vRightChange) + "1" + option.value.substr(vRightChange + 1);    }}function dontCopyPermissions(option) {    if (!(option.value.charAt(vDefaultInherit) == "*" &&           option.text.charAt(tInherit) == "*")) {        option.text = option.text.substr(0, tPerm) + option.value.substr(vDefaultPerm, nbOfPerm) +                      option.text.substr(tInherit + 1);        option.value = option.value.substr(0, vRightChange) + "0" + option.value.substr(vRightChange + 1);    }}function cutRestoreInheritance() {    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    if (formular.cutRestInherit.checked) {        copyPermissions(option);    } else {        dontCopyPermissions(option);    }    canSetPermissions();}function cutRestoreAllInheritance() {    reverseDisabledCheckBox(formular.howCutAllInherit);    if (formular.cutRestAllInherit.checked) {        //formular.cutRestInherit.disabled = true;        if (formular.howCutAllInherit[0].checked) {            copyAllPermissions();        }    } else {        dontCopyAllPermissions();        //canSetPermissions();    }    canSetPermissions();}function copyAllPermissions(){    var i;    for (i = 0; i < formular.aclEntries.length; i++) {        copyPermissions(formular.aclEntries.options[i]);    }    canSetPermissions();}function dontCopyAllPermissions(){    var i;    for (i = 0; i < formular.aclEntries.length; i++) {        dontCopyPermissions(formular.aclEntries.options[i]);    }    canSetPermissions();}function resetChildPermissions(){    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    if (option.value.charAt(vResetChildPerm) != "1") {        option.value = option.value.substr(0, vResetChildPerm) + "1" +                       option.value.substr(vResetChildPerm + 1);    } else {        option.value = option.value.substr(0, vResetChildPerm) + "0" +                       option.value.substr(vResetChildPerm + 1);    }    canSetPermissions();}function removeACLEntry(){    var i = formular.aclEntries.selectedIndex;    var option = formular.aclEntries.options[i];    if (option.value.charAt(vRemACLEntry) != "1") {        if (option.value.charAt(vAddedACL) == "1") {            formular.aclEntries.options[i] = null;            if (formular.aclEntries.options[0] == null) {                formular.aclEntries.options[0] = new Option(emptyText, "null");            }            if (i == 0) i++;            formular.aclEntries.options[i - 1].selected = true;        } else {            option.value = option.value.substr(0, vRemACLEntry) + "1" +                           option.value.substr(vRemACLEntry + 1);            option.text = option.text.substr(0, tName) + "--REMOVE--" +                          option.text.substr(tName + tNameSize);            //if (formular.resetChild.checked)            //    alert("Reset permissions on all childs is no more valid !");        }    } else {        option.value = option.value.substr(0, vRemACLEntry) + "0" +                       option.value.substr(vRemACLEntry + 1);        option.text = option.text.substr(0, tName) +                       option.value.substr(vName, vNameSize) +                      option.text.substr(tName + tNameSize);    }    canSetPermissions();}function undoAll(){    var i;    if (formular.aclEntries.options[0].value == "null") {        return;    }    for (i = 0; i < formular.aclEntries.length; i++) {        var value = formular.aclEntries.options[i].value;        if (value.charAt(vAddedACL) == "1") {            formular.aclEntries.options[i] = null;            i--;            if (formular.aclEntries.options[0] == null) {                disableAllSettings();                formular.aclEntries.options[0] = new Option(emptyText, "null");            }        } else {            var text = formular.aclEntries.options[i].text;            if (value.charAt(vRightChange) == "1") {                value = value.substr(0, vRightChange) + "0" +                        value.substr(vRightChange + 1);            }            if (value.charAt(vResetChildPerm) == "1") {                value = value.substr(0, vResetChildPerm) + "0" +                        value.substr(vResetChildPerm + 1);            }            if (value.charAt(vRemACLEntry) == "1") {                value = value.substr(0, vRemACLEntry) + "0" +                        value.substr(vRemACLEntry + 1);                text = text.substr(0, tName) +                       value.substr(vName, vNameSize) +                       text.substr(tName + tNameSize);            }            text = text.substr(0, tPerm) + value.substr(vDefaultPerm, nbOfPerm) +                   text.substr(tInherit + 1);            formular.aclEntries.options[i].text = text;            formular.aclEntries.options[i].value = value;        }    }    var j = formular.aclEntries.selectedIndex;    if (j < 0) return;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -