This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
k18-ntcs-web-ntc/src/main/webapp/WEB-INF/include/form/areaInfo.jsp

491 lines
23 KiB
Plaintext

<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<script type="text/javascript">
$(function(){
$(".glyphicon-plus").on("click",function(){
var obj=$(this).parents(".form-section").next(".container-fluid").clone();
var len=$(this).parents("div").find(".container-fluid:visible").size();
if($(this).parent().parent().parent().attr("id")=="areaIp"){
obj.find("[id^='_areaCfg']").each(function(){
var name=$(this).attr("id").replace("_areaCfg.","");
$(this).removeAttr("id");
$(this).attr("name","areaCfg["+len+"]."+name);
$(this).parents(".form-group").find("div[for^='_areaCfg']").attr("for","areaCfg["+len+"]."+name);
$(this).selectpicker("refresh");
});
obj.removeClass("hidden");
switchIpType(obj.find("select[name$='ipType']"));
obj.find("select[name$='ipType']").on("change",function(){
switchIpType($(this));
});
obj.appendTo("#areaIp");
$("#areaIsp").find(".container-fluid").each(function(){
if(!$(this).hasClass("hidden")) $(this).remove();
});
}else if($(this).parent().parent().parent().attr("id")=="areaIsp"){
obj.find("[name^='areaCode']").each(function(){
$(this).attr("name","areaIsp["+len+"].area");
$(this).parents(".form-group").find("div[for^='areaCode']").attr("for","areaIsp["+len+"].area");
$(this).selectpicker("refresh");
});
obj.find("[name^='ispCode']").each(function(){
$(this).attr("name","areaIsp["+len+"].isp");
$(this).selectpicker("refresh");
});
obj.removeClass("hidden");
obj.appendTo("#areaIsp");
$("#areaIp").find(".container-fluid").each(function(){
if(!$(this).hasClass("hidden")) $(this).remove();
});
}
});
});
function delAreaIp(obj){
var thisObj=$(obj);
thisObj.parents(".container-fluid").remove();
var len=$("#areaIp").find(".container-fluid:visible").size();
//调整角标
if(len>0){
len--;
$("#areaIp").find(".container-fluid:visible").each(function(){
$(this).find("[name^='areaCfg']").each(function(){
var name=$(this).attr("name");
name=name.substring(name.lastIndexOf(".")+1,name.length);
$(this).attr("name","areaCfg["+len+"]."+name);
$(this).parents(".form-group").find("div[for^='areaCfg']").attr("for","areaCfg["+len+"]."+name);
});
len--;
});
}
}
function delAreaIsp(obj){
var thisObj=$(obj);
thisObj.parents(".container-fluid").remove();
var len=$("#areaIsp").find(".container-fluid:visible").size();
if(len>0){
len--;
$("#areaIsp").find(".container-fluid:visible").each(function(){
$(this).find("[name^='areaIsp']").each(function(){
var name=$(this).attr("name");
name=name.substring(name.lastIndexOf(".")+1,name.length);
$(this).attr("name","areaIsp["+len+"]."+name);
$(this).parents(".form-group").find("div[for^='areaIsp']").attr("for","areaIsp["+len+"]."+name);
});
len--;
});
}
}
</script>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_area_block"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="isAreaEffective" value="1" class="required"
<c:if test="${_cfg.isAreaEffective==1}">checked</c:if>
<c:if test="${action==2}">disabled</c:if>
><spring:message code="yes"/>
</label>
<label class="radio-inline">
<input type="radio" name="isAreaEffective" value="0" class="required"
<c:if test="${_cfg.isAreaEffective==0}">checked</c:if>
<c:if test="${action==2}">disabled</c:if>
><spring:message code="no"/>
</label>
<c:if test="${action==2}">
<input class="form-control" type="hidden" name="isAreaEffective" value="${_cfg.isAreaEffective}">
</c:if>
</div>
<div for="isAreaEffective"></div>
</div>
</div>
<div class="hidden areaType col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="area_control_type"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="areaType" value="1" class="required"><spring:message code="area"/> <spring:message code="isp"/>
</label>
<label class="radio-inline">
<input type="radio" name="areaType" value="0" class="required"><spring:message code="area"/> ip
</label>
</div>
<div for="areaType"></div>
<input class="form-control" type="hidden" name="areaEffectiveIds" value="${_cfg.areaEffectiveIds}">
</div>
</div>
</div>
<div class="hidden" id="areaIsp">
<h4 class="form-section"><spring:message code="area"/> <spring:message code="isp"/><small><span class="glyphicon glyphicon-plus" title="add"></span></small></h4>
<div class="container-fluid hidden">
<div class="row">
<div class="pull-right">
<span class="glyphicon glyphicon-remove pull-right" title="remove" onClick="delAreaIsp(this);"/>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="area"/></label>
<div class="col-md-6">
<select name="areaCode" class="form-control required" data-live-search="true" data-live-search-placeholder="search" >
<option value="" ><spring:message code="select"/></option>
<c:forEach items="${areas}" var="area">
<option value="${area.itemCode}">${area.itemValue}</option>
</c:forEach>
</select>
</div>
<div for="areaCode"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="isp"/></label>
<div class="col-md-6">
<select name="ispCode" class="form-control" data-live-search="true" data-live-search-placeholder="search" >
<option value="" ><spring:message code="select"/></option>
<c:forEach items="${isps}" var="isp">
<option value="${isp.itemCode}">${isp.itemValue}</option>
</c:forEach>
</select>
</div>
</div>
</div>
</div>
</div>
<c:forEach items="${_areaIsps}" var="areaIsp" varStatus="status">
<div class="container-fluid">
<div class="row">
<div class="pull-right">
<span class="glyphicon glyphicon-remove" title="remove" onClick="delAreaIsp(this);"/>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="area"/></label>
<div class="col-md-6">
<select name="areaIsp[${status.index}].area" class="selectpicker form-control required" data-live-search="true" data-live-search-placeholder="search" >
<option value="" ><spring:message code="select"/></option>
<c:forEach items="${areas}" var="area">
<option value="${area.itemCode}"
<c:if test="${area.itemCode==areaIsp.area}">selected</c:if>
>${area.itemValue}</option>
</c:forEach>
</select>
</div>
<div for="areaIsp[${status.index}].area"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="isp"/></label>
<div class="col-md-6">
<select name="areaIsp[${status.index}].isp" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search" >
<option value="" ><spring:message code="select"/></option>
<c:forEach items="${isps}" var="isp">
<option value="${isp.itemCode}"
<c:if test="${isp.itemCode==areaIsp.isp}">selected</c:if>
>${isp.itemValue}</option>
</c:forEach>
</select>
</div>
</div>
</div>
</div>
</div>
</c:forEach>
</div>
<div class="hidden" id="areaIp">
<h4 class="form-section"><spring:message code="area"/> ip<small><span class="glyphicon glyphicon-plus" title="add"></span></small></h4>
<div class="container-fluid hidden">
<div class="row">
<input type="hidden" id="_areaCfg.isAreaEffective" value="${_areaCfg.isAreaEffective}">
<input id="_areaCfg.cfgId" type="hidden" value="${_areaCfg.cfgId}">
<div class="pull-right">
<span class="glyphicon glyphicon-remove" title="remove" onClick="delAreaIp(this);"/>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<div class="col-md-6">
<input id="_areaCfg.cfgDesc" class="form-control" type="text" value="">
</div>
<div for="_areaCfg.cfgDesc"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="ip_type"/></label>
<div class="col-md-6">
<select id="_areaCfg.ipType" class="show-tick form-control required">
<option value="4">V4</option>
<option value="6">V6</option>
</select>
</div>
<div for="_areaCfg.ipType"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_ip"/></label>
<div class="col-md-6">
<input id="_areaCfg.srcIp" class="form-control required ipCheck" type="text" value="${_areaCfg.srcIp}">
</div>
<div for="_areaCfg.srcIp"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_address_mask"/></label>
<div class="col-md-6">
<input id="_areaCfg.srcIpMask" class="form-control required ipMask" type="text" value="${_areaCfg.srcIpMask}">
</div>
<div for="_areaCfg.srcIpMask"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_port"/></label>
<div class="col-md-6">
<input id="_areaCfg.srcPort" class="form-control required" type="text" value="${_areaCfg.srcPort}">
</div>
<div for="_areaCfg.srcPort"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_port_mask"/></label>
<div class="col-md-6">
<input id="_areaCfg.srcPortMask" class="form-control required" type="text" value="${_areaCfg.srcPortMask}">
</div>
<div for="_areaCfg.srcPortMask"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_ip"/></label>
<div class="col-md-6">
<input id="_areaCfg.dstIp" class="form-control required ipCheck" type="text" value="${_areaCfg.dstIp}">
</div>
<div for="_areaCfg.dstIp"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_address_mask"/></label>
<div class="col-md-6">
<input id="_areaCfg.dstIpMask" class="form-control required ipMask" type="text" value="${_areaCfg.dstIpMask}">
</div>
<div for="_areaCfg.dstIpMask"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_port"/></label>
<div class="col-md-6">
<input id="_areaCfg.dstPort" class="form-control required" type="text" value="${_areaCfg.dstPort}">
</div>
<div for="_areaCfg.dstPort"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_port_mask"/></label>
<div class="col-md-6">
<input id="_areaCfg.dstPortMask" class="form-control required" type="text" value="${_areaCfg.dstPortMask}">
</div>
<div for="_areaCfg.dstPortMask"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="protocol"/></label>
<div class="col-md-6">
<select id="_areaCfg.protocol" class="show-tick form-control required">
<option value=""><spring:message code="select"/></option>
<option value="6" <c:if test="${_areaCfg.protocol==6}">selected</c:if>>TCP</option>
<option value="17" <c:if test="${_areaCfg.protocol==17}">selected</c:if> >UDP</option>
<option value="0" <c:if test="${_areaCfg.protocol==0}">selected</c:if> ><spring:message code="arbitrary"/></option>
</select>
<input type="hidden" id="_areaCfg.protocolId" value="${_areaCfg.protocolId}">
</div>
<div for="_areaCfg.protocol"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="direction"/></label>
<div class="col-md-6">
<select id="_areaCfg.direction" class="show-tick form-control required" >
<option value=""><spring:message code="select"/></option>
<option value="0" <c:if test="${_areaCfg.direction==0}">selected</c:if>><spring:message code="twoway"/></option>
<option value="1" <c:if test="${_areaCfg.direction==1}">selected</c:if>><spring:message code="oneway"/></option>
</select>
</div>
<div for="_areaCfg.direction"></div>
</div>
</div>
</div>
</div>
<input type="hidden" name="areaCfgIds" value="${areaCfgIds}">
<c:forEach items="${areaCfgs}" var ="areaCfg" varStatus="status">
<div class="container-fluid">
<div class="row">
<input type="hidden" name="areaCfg[${status.index}].isAreaEffective" value="${areaCfg.isAreaEffective}">
<input name="areaCfg[${status.index}].cfgId" type="hidden" value="${areaCfg.cfgId}">
<div class="pull-right">
<span class="glyphicon glyphicon-remove" title="remove" onClick="delAreaIp(this);"/>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].cfgDesc" class="form-control" type="text" value="${areaCfg.cfgDesc}">
</div>
<div for="areaCfg[${status.index}].cfgDesc"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="ip_type"/></label>
<div class="col-md-6">
<select name="areaCfg[${status.index}].ipType" class="selectpicker show-tick form-control required">
<option value="4" <c:if test="${areaCfg.ipType==4}">selected</c:if>>V4</option>
<option value="6" <c:if test="${areaCfg.ipType==6}">selected</c:if>>V6</option>
</select>
</div>
<div for="areaCfg[${status.index}].ipType"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_ip"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].srcIp" class="form-control required ipCheck" type="text" value="${areaCfg.srcIp}">
</div>
<div for="areaCfg[${status.index}].srcIp"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_address_mask"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].srcIpMask" class="form-control required ipMask" type="text" value="${areaCfg.srcIpMask}">
</div>
<div for="areaCfg[${status.index}].srcIpMask"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_port"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].srcPort" class="form-control required" type="text" value="${areaCfg.srcPort}">
</div>
<div for="areaCfg[${status.index}].srcPort"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_port_mask"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].srcPortMask" class="form-control required" type="text" value="${areaCfg.srcPortMask}">
</div>
<div for="areaCfg[${status.index}].srcPortMask"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_ip"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].dstIp" class="form-control required ipCheck" type="text" value="${areaCfg.dstIp}">
</div>
<div for="areaCfg[${status.index}].dstIp"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_address_mask"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].dstIpMask" class="form-control required ipMask" type="text" value="${areaCfg.dstIpMask}">
</div>
<div for="areaCfg[${status.index}].dstIpMask"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_port"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].dstPort" class="form-control required" type="text" value="${areaCfg.dstPort}">
</div>
<div for="areaCfg[${status.index}].dstPort"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_port_mask"/></label>
<div class="col-md-6">
<input name="areaCfg[${status.index}].dstPortMask" class="form-control required" type="text" value="${areaCfg.dstPortMask}">
</div>
<div for="areaCfg[${status.index}].dstPortMask"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="protocol"/></label>
<div class="col-md-6">
<select name="areaCfg[${status.index}].protocol" class="selectpicker show-tick form-control required">
<option value=""><spring:message code="select"/></option>
<option value="6" <c:if test="${areaCfg.protocol==6}">selected</c:if>>TCP</option>
<option value="17" <c:if test="${areaCfg.protocol==17}">selected</c:if> >UDP</option>
<option value="0" <c:if test="${areaCfg.protocol==0}">selected</c:if> ><spring:message code="arbitrary"/></option>
</select>
<input type="hidden" name="areaCfg[${status.index}].protocolId" value="${areaCfg.protocolId}">
</div>
<div for="areaCfg[${status.index}].protocol"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="direction"/></label>
<div class="col-md-6">
<select name="areaCfg[${status.index}].direction" class="selectpicker show-tick form-control required" >
<option value=""><spring:message code="select"/></option>
<option value="0" <c:if test="${areaCfg.direction==0}">selected</c:if>><spring:message code="twoway"/></option>
<option value="1" <c:if test="${areaCfg.direction==1}">selected</c:if>><spring:message code="oneway"/></option>
</select>
</div>
<div for="areaCfg[${status.index}].direction"></div>
</div>
</div>
</div>
</div>
</c:forEach>
</div>