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

📄 index.jsp

📁 sshJava编程sshJava编程sshJava编程
💻 JSP
字号:
<%@ page language="java" contentType="text/html; charset=GB18030"
	pageEncoding="GB18030"%>
<%@include file="/common/common.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
		<link href="style/oa.css" rel="stylesheet" type="text/css">
		<script language="javascript" src="script/public.js"></script>
		
		<script type="text/javascript" src="dwr/engine.js"></script>
		<script type="text/javascript" src="dwr/util.js"></script>
		<script type="text/javascript" src="dwr/interface/aclManager.js"></script>
		<script type="text/javascript">
		//授权
		function addOrUpdatePermission(field){
			dwr.engine.setAsync(false);
	
			//如果被选择上,则同时选择其"不继承"和"启用"checkbox
			if(field.checked){
				$(field.moduleSn+"_USE").checked = true;
				<c:if test="${principalType eq 'User' }">
					$(field.moduleSn+"_EXT").checked = true;
					addOrModifyUserExtends(field);
				</c:if>
			}
			//调用后台代码
			aclManager.addOrUpdatePermission(
				"${principalType}",
				${principalSn},
				field.moduleSn,
				field.permission,
				field.checked
			);
		}

		//设置用户的继承特性
		function addOrModifyUserExtends(field){
			aclManager.addOrModifyUserExtends(
				${principalSn},
				field.moduleSn,
				!field.checked
			);
		}

		//点击启用checkbox
		function hasPermission(field){
			//如果checkbox被选中,意味着需要更新ACL的状态
			//设置为同步方式,以便DWR依次发出下列请求
			dwr.engine.setAsync(false);
			if(field.checked){
				//更新C/R/U/D
				addOrUpdatePermission($(field.moduleSn+"_C"));
				addOrUpdatePermission($(field.moduleSn+"_R"));
				addOrUpdatePermission($(field.moduleSn+"_U"));
				addOrUpdatePermission($(field.moduleSn+"_D"));
				//更新Extends状态
				<c:if test="${principalType eq 'User' }">
					addOrModifyUserExtends($(field.moduleSn+"_EXT"));
				</c:if>
			}else{
				aclManager.deletePermission(
					"${principalType}",
					${principalSn},
					field.moduleSn
				);
				$(field.moduleSn+"_C").checked = false;
				$(field.moduleSn+"_R").checked = false;
				$(field.moduleSn+"_U").checked = false;
				$(field.moduleSn+"_D").checked = false;
				<c:if test="${principalType eq 'User' }">
					$(field.moduleSn+"_EXT").checked = false;
				</c:if>
			}
		}
		//初始化授权表格
		function initTable(){
			aclManager.searchAclRecord(
				"${principalType}",
				${principalSn},
				function(datas){
					for(var i=0; i < datas.length; i++){
						var moduleSn = datas[i][0];
						var cState = datas[i][1];
						var rState = datas[i][2];
						var uState = datas[i][3];
						var dState = datas[i][4];
						var extState = datas[i][5];
				
						$(moduleSn+"_C").checked = cState == 0 ? false : true;
						$(moduleSn+"_R").checked = rState == 0 ? false : true;
						$(moduleSn+"_U").checked = uState == 0 ? false : true;
						$(moduleSn+"_D").checked = dState == 0 ? false : true;
						<c:if test="${principalType eq 'User' }">
							$(moduleSn+"_EXT").checked = extState == 0 ? true : false;
						</c:if>
						$(moduleSn+"_USE").checked = true;
						}
				}
			);
		}
		//测试WDR整合
		function test1(){
			aclManager.mothed1(function (data){alert(data);});
		}
		</script>
		<c:choose>
			<c:when test="${principalType eq 'Role' }">
				<c:set var="title" value="请给角色【${role.name }】授权" />
			</c:when>
			<c:otherwise>
				<c:set var="title" value="请给用户【${user.username }】授权" />
			</c:otherwise>
		</c:choose>
		<title>${title }</title>
		
	</head>
<body onload="initTable()">

<center>
<input type="button"  value="测试DWR" onclick="test1()">
<TABLE class="tableEdit" border="0" cellspacing="1" cellpadding="0"	style="width: 580px;">
<TBODY>
	<TR>
		<!-- 这里是添加、编辑界面的标题 -->
		<td align="center" class="tdEditTitle">${title }</td>
	</TR>
	<TR>
		<td>
		
<!-- 主输入域开始 -->

<table class="tableEdit" style="width:560px;" cellspacing="0" border="0" cellpadding="0">
	
	<tr>
		<td class="tdEditLabel" >顶级模块</td>			
		<td class="tdEditLabel">二级模块</td>
		<td class="tdEditLabel" >权限</td>
	<c:if test="${principalType eq 'User' }">
		<td class="tdEditLabel" >不继承</td>
	</c:if>
		<td class="tdEditLabel" >启用</td>
	</tr>
	
	<!-- 输出模块树 -->
	<c:forEach items="${modules }" var="module">
	<tr>
		<td>${module.name }</td>
		<td></td>
		<td>
		<input type="checkbox" id="${module.id }_C" onclick="addOrUpdatePermission(this)" moduleSn="${module.id }" permission="0">C
		<input type="checkbox" id="${module.id }_R" onclick="addOrUpdatePermission(this)" moduleSn="${module.id }" permission="1">R
		<input type="checkbox" id="${module.id }_U" onclick="addOrUpdatePermission(this)" moduleSn="${module.id }" permission="2">U
		<input type="checkbox" id="${module.id }_D" onclick="addOrUpdatePermission(this)" moduleSn="${module.id }" permission="3">D
		</td>
	<c:if test="${principalType eq 'User' }">
		<td><input type="checkbox" id="${module.id }_EXT"  onclick="addOrModifyUserExtends(this)" moduleSn="${module.id }"></td>
	</c:if>
		<td><input type="checkbox" id="${module.id }_USE" onclick="hasPermission(this)" moduleSn="${module.id }"></td>
	</tr>
	<c:forEach items="${module.children }" var="child">
	<tr>
		<td></td>
		<td>${child.name }</td>
		<td>
		<input type="checkbox" id="${child.id }_C" onclick="addOrUpdatePermission(this)" moduleSn="${child.id }" permission="0">C
		<input type="checkbox" id="${child.id }_R" onclick="addOrUpdatePermission(this)" moduleSn="${child.id }" permission="1">R
		<input type="checkbox" id="${child.id }_U" onclick="addOrUpdatePermission(this)" moduleSn="${child.id }" permission="2">U
		<input type="checkbox" id="${child.id }_D" onclick="addOrUpdatePermission(this)" moduleSn="${child.id }" permission="3">D
		</td>
	<c:if test="${principalType eq 'User' }">
		<td><input type="checkbox" id="${child.id }_EXT" onclick="addOrModifyUserExtends(this)" moduleSn="${child.id }"></td>
	</c:if>
		<td><input type="checkbox" id="${child.id }_USE" onclick="hasPermission(this)" moduleSn="${child.id }"></td>
	</tr>
	</c:forEach>
	</c:forEach>
</table>
<!-- 主输入域结束 -->

		</td>
	</TR>
</TBODY>
</TABLE>
		<TABLE>
			<TR align="center">
				<TD colspan="3" bgcolor="#EFF3F7">
					<input type="button" class="MyButton" value="关闭窗口"
							onclick=window.close();>
				</TD>
			</TR>
		</TABLE>
</center>
</body>
</html>

⌨️ 快捷键说明

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