Statistics
| Branch: | Revision:

m2u-upass-admin / WebContent / jsp / ss103_group / ibssGroupCreate.jsp @ 82:451cbe00accc

History | View | Annotate | Download (10 KB)

1
<%@ taglib uri="/WEB-INF/tld/struts-html" prefix="html"%>
2
<%@ taglib uri="/WEB-INF/tld/struts-html-el" prefix="htmlEL"%>
3
<%@ taglib uri="/WEB-INF/tld/struts-bean" prefix="bean"%>
4
<%@ taglib uri="/WEB-INF/tld/struts-logic" prefix="logic"%>
5
<%@ taglib uri="/WEB-INF/tld/struts-logic-el" prefix="logicEL"%>
6
<%@ taglib uri="/WEB-INF/tld/c" prefix="c"%>
7

    
8
<bean:define id="viewBean" name="ibssGroupForm" property="ibssGroupAccessView" />
9
<bean:define id="navigations" name="viewBean" property="navigationList" type="java.util.List"></bean:define>
10

    
11
<h3 class="title"><strong><c:out value="${sessionScope.displayDesc}"/> - <bean:message key="general.button.create" /></strong></h3>
12

    
13
<table id="errorTable">
14
	<tr>
15
		<td><span id="serverSideError" class="error"><jsp:include
16
			flush="true" page="/jsp/errorHandler.jsp"></jsp:include></span></td>
17
	</tr>
18
</table>
19

    
20
<table class="stepTable">
21
	<tr>
22
		<td>&nbsp;</td>
23
		<td>
24
		<div id="steps"><span>
25
			<bean:message key="general.title.steps" arg0="1" arg1="3" /></span></div>
26
		</td>
27
	</tr>
28
</table>
29

    
30
<htmlEL:form action="/ss103/createGroupConfrim.do">
31
<table class="tabularForm">
32
	<tr>
33
		<td width="72">&nbsp;</td>
34
		<td width="100">&nbsp;</td>
35
		<td width="145">&nbsp;</td>
36
		<td width="143">&nbsp;</td>
37
		<td width="144">&nbsp;</td>
38
	</tr>
39

    
40
	<tr>
41
		<td>&nbsp;</td>
42
		<td><bean:message key="group.name"/>:</td>
43
		<td><htmlEL:text property="groupName" name="ibssGroupForm" maxlength="64" autocomplete="off"/></td>
44
		<td>&nbsp;</td>
45
		<td>&nbsp;</td>
46
	</tr>
47
	
48
	<tr>
49
		<td>&nbsp;</td>
50
		<td><bean:message key="group.description"/>:</td>
51
		<td class="valignTop" colspan="2"><htmlEL:textarea property="groupDescription" name="ibssGroupForm"/></td>
52
		<td>&nbsp;</td>
53
	</tr>
54
	
55
	<tr>
56
		<td>&nbsp;</td>
57
		<td>&nbsp;</td>
58
		<td>&nbsp;</td>
59
		<td>&nbsp;</td>
60
		<td>&nbsp;</td>
61
	</tr>
62
	
63
	<tr>
64
		<td>&nbsp;</td>
65
		<td><strong><bean:message key="group.access"/></strong>:</td>
66
		<td>&nbsp;</td>
67
		<td>&nbsp;</td>
68
		<td>&nbsp;</td>
69
	</tr>
70
	<tr>
71
		<td>&nbsp;</td>
72
		<td colspan="4">
73
			<br/>		
74
			<ul class="treeHierarchy" class="right">
75
			<c:forEach var="item" items="${viewBean.map.navigationList}" varStatus="index">
76
				<c:set var="css" value=""/>
77
				<c:if test="${index.last}"><c:set var="css" value="lastLine"/></c:if>
78
				<li class="<c:out value="${css}"/>">
79
					<htmlEL:multibox styleClass="checkAll" property="selectedAccesses" disabled="false"><c:out value="${item.nodeId}"/></htmlEL:multibox>				  	
80
					<label class="nodeName"><c:out value="${item.nodeName}"/></label>
81
					(<c:out value="${item.nodeCode}"/>)
82
					<div class="<c:out value="${item.nodeId}"/>">
83
					<c:if test="${not empty item.subNavigations}">
84
					<ul>
85
					<c:forEach var="subItem" items="${item.subNavigations}" varStatus="index1">
86
						<c:set var="css" value=""/>
87
						<c:if test="${index1.last}"><c:set var="css" value="lastLine"/></c:if>
88
						<li class="<c:out value="${css}"/>">
89
							<htmlEL:multibox styleClass="subAll" property="selectedAccesses" disabled="false"><c:out value="${subItem.nodeId}"/></htmlEL:multibox>
90
							<label class="nodeName"><c:out value="${subItem.nodeName}"/></label>
91
							(<c:out value="${subItem.nodeCode}"/>)
92
							<div class="<c:out value="${subItem.nodeId}"/>">
93
							<c:if test="${not empty subItem.subNavigations}">
94
							<ul>
95
							<c:forEach var="thirdItem" items="${subItem.subNavigations}" varStatus="index2">
96
								<c:set var="css" value=""/>
97
								<c:if test="${index2.last}"><c:set var="css" value="lastLine"/></c:if>
98
								<li class="<c:out value="${css}"/>">
99
									<htmlEL:multibox styleClass="sub2All" property="selectedAccesses" disabled="false"><c:out value="${thirdItem.nodeId}"/></htmlEL:multibox>	
100
									<label class="nodeName"><c:out value="${thirdItem.nodeName}"/></label>
101
									(<c:out value="${thirdItem.nodeCode}"/>)
102
									<div class="<c:out value="${thirdItem.nodeId}"/>">
103
									<c:if test="${not empty thirdItem.subNavigations}">
104
									<ul>
105
									<c:forEach var="forthItem" items="${thirdItem.subNavigations}" varStatus="index3">
106
										<c:set var="css" value=""/>
107
										<c:if test="${index3.last}"><c:set var="css" value="lastLine"/></c:if>
108
										<li class="<c:out value="${css}"/>">
109
											<htmlEL:multibox onclick="SetAllCheckBoxes(${forthItem.nodeId}, 'selectedAccesses');" property="selectedAccesses" disabled="false">
110
											<c:out value="${forthItem.nodeId}"/>
111
											</htmlEL:multibox>
112
											<label class="nodeName"><c:out value="${forthItem.nodeName}"/></label>
113
											(<c:out value="${forthItem.nodeCode}"/>)
114
											<div class="<c:out value="${forthItem.nodeId}"/>">
115
											<c:if test="${not empty forthItem.subNavigations}">
116
											<ul>
117
											<c:forEach var="fifthItem" items="${forthItem.subNavigations}" varStatus="index4">
118
												<c:set var="css" value=""/>
119
												<c:if test="${index4.last}"><c:set var="css" value="lastLine"/></c:if>
120
												<li class="<c:out value="${css}"/>">
121
													<htmlEL:multibox name="viewBean" property="selectedAccesses" disabled="false"><c:out value="${fifthItem.nodeId}"/></htmlEL:multibox>
122
													<label class="nodeName"><c:out value="${fifthItem.nodeName}"/></label>
123
													(<c:out value="${fifthItem.nodeCode}"/>)
124
												</li>
125
											</c:forEach>
126
											</ul>
127
											</c:if>
128
											</div>
129
										</li>
130
									</c:forEach>
131
									</ul>
132
									</c:if>
133
									</div>
134
								</li>
135
							</c:forEach>
136
							</ul>
137
							</c:if>
138
							</div>
139
						</li>
140
					</c:forEach>
141
					</ul>
142
					</c:if>				
143
					</div>
144
				</li>
145
			</c:forEach>
146
		</ul>
147
		</td>
148
	</tr>
149
	<tr>
150
		<td colspan="5">&nbsp;</td>
151
	</tr>
152
</table>
153
<div class="floatRight">
154
	<htmlEL:submit property="action" onclick="overlay();">
155
		<bean:message key="general.button.back"/>
156
	</htmlEL:submit>
157
	<htmlEL:submit property="action" onclick="overlay();">
158
		<bean:message key="general.button.next"/>
159
	</htmlEL:submit>
160
</div>
161
</htmlEL:form>
162

    
163

    
164
<script type="text/javascript">
165
function SetAllCheckBoxes(FieldName, name)
166
{
167
	var objFormParent = document.forms[0].elements[name];
168
	var each;
169
	for(var j = 0, maxJ = objFormParent.length; j < maxJ; ++j)
170
	{
171
		var el = objFormParent[j];
172
		if(el.value == FieldName)
173
		{
174
			each = el;
175
		}
176
	}
177
	
178
	var objElement = document.getElementById(FieldName);
179
	var objCheckBoxes = objElement.getElementsByTagName("*");
180
	for(var i = 0, maxI = objCheckBoxes.length; i < maxI; ++i) {
181
        var elm = objCheckBoxes[i];
182
        switch(elm.type) {
183
        case "checkbox":
184
            if(each.checked == false && elm.name == name)
185
            {
186
                elm.checked = false;
187
            }
188
            if(each.checked == true && elm.name == name)
189
            {
190
                elm.checked = true;
191
            }
192
      }
193
	}
194
}
195
</script>
196
<script type="text/javascript">
197
var flag = true;
198
$('.selectAllCheck').click(function(){
199
	if(flag){
200
		$('.treeHierarchy input:checkbox[name|="accessibleArray"]').attr('checked','checked');
201
		var textMode1 = $('#fieldMode1').val();
202
		if(textMode1 != 'Observation'){
203
			$('.treeHierarchy input:checkbox[name|="editableArray"]').attr('checked','checked');
204
		}
205
		flag = false;
206
	}
207
	else{
208
		$(".treeHierarchy input:checkbox").removeAttr("checked");
209
		flag = true;
210
	}
211
});
212
</script>
213
<script type="text/javascript">
214
$(function() {
215
	  // 1st level select all child
216
	  function checkAll()
217
	  {
218
		var singleValues = $(this).val();
219
		var selected = "."+singleValues;
220
		$(selected).children("ul").find("input[type=checkbox]").prop("checked",this.checked);
221
	  }
222
	  // 2nd level select all child
223
	  function subAll()
224
	  {
225
		var singleValues = $(this).val();
226
		var selected = "."+singleValues;
227
		$(selected).find("input[type=checkbox]").prop("checked",this.checked);
228

    
229
		var parentId = "."+$(this).parent("li").parent("ul").parent("div").parent("li").find("input[type=checkbox]").val();
230
		var parentValue = "input[value="+$(this).parent("li").parent("ul").parent("div").parent("li").find("input[type=checkbox]").val()+"]";
231
		var parentBox = $(this).parent("li").parent("ul").parent("div").parent("li").find(parentValue);
232
		var parentLength = $(parentId).find("input[type=checkbox]").length;
233
		var parentCheck = $(parentId).find("input[type=checkbox]:checked").length;
234

    
235
		if(parentCheck != null) {
236
			$(parentBox).attr("checked", "checked");
237
		} else {
238
		    $(parentBox).removeAttr("checked");
239
		}
240
	  }
241
	  // 3rd level select all child
242
	  function actionAll()
243
	  {
244
		var parentId = "."+$(this).parent("li").parent("ul").parent("div").parent("li").find("input[type=checkbox]").val();
245
		var parentValue = "input[value="+$(this).parent("li").parent("ul").parent("div").parent("li").find("input[type=checkbox]").val()+"]";
246
		var parentBox = $(this).parent("li").parent("ul").parent("div").parent("li").find(parentValue);
247
		var parentLength = $(parentId).find("input[type=checkbox]").length;
248
		var parentCheck = $(parentId).find("input[type=checkbox]:checked").length;
249

    
250
		if(parentCheck != null) {
251
			$(parentBox).attr("checked", "checked");
252
		} else {
253
		   	$(parentBox).removeAttr("checked");
254
		}
255

    
256
		var ancestorId = "."+$(this).parent("li").parent("ul").parent("div").parent("li").parent("ul").parent("div").parent("li").find("input[type=checkbox]").val();
257
		var ancestorValue = "input[value="+$(this).parent("li").parent("ul").parent("div").parent("li").parent("ul").parent("div").parent("li").find("input[type=checkbox]").val()+"]";
258
		var ancestorBox = $(this).parent("li").parent("ul").parent("div").parent("li").parent("ul").parent("div").parent("li").find(ancestorValue);
259
		var ancestorLength = $(ancestorId).find("input[type=checkbox]").length;
260
		var ancestorCheck = $(ancestorId).find("input[type=checkbox]:checked").length;
261

    
262
		if(ancestorCheck != null) {
263
			$(ancestorBox).attr("checked", "checked");
264
		} else {
265
			$(ancestorBox).removeAttr("checked");
266
		}     
267
	  }
268

    
269
	  $(".checkAll").change(checkAll);
270

    
271
	  $(".subAll").change(subAll);
272

    
273
	  $(".sub2All").change(actionAll);
274

    
275
});
276
</script>