(function($) { | |
$.fn.objWifiDmzSet = function() { | |
var gDMZHostIpAdrrCtrl; | |
var dmzMode; | |
this.onLoad = function(flag) { | |
if(flag) { | |
LoadWebPage("html/wifi/wifiDmzSet.html"); | |
$("#selDmzSwitch").change(function() { | |
if("1"==$(this).val()) { | |
$("#divDmzIpAddr").hide(); | |
} else { | |
$("#divDmzIpAddr").show(); | |
} | |
}); | |
$("#lt_dmz_btnAddDmzIpAddr").click(function() { | |
AddDmzIpAddr(); | |
}); | |
$("#lt_dmz_btnDeleteDmzIpAddr").click(function() { | |
DeleteDmzIpAddr(); | |
}); | |
$("#lt_dmz_btnEditDmzIpAddr").click(function() { | |
ModifyDmzIpAddr(); | |
}); | |
gDMZHostIpAdrrCtrl = $("#divhostIpAddrctrl").ip_address("divhostIpAddrctrl"); | |
} //end flag | |
GetFWDmzInfo(); | |
} | |
function DeleteDmzIpAddr() { | |
//enable DMZ | |
if(dmzMode != $("#selDmzSwitch").val()) { | |
var configMap = new Map(); | |
configMap.put("RGW/firewall/dmz_disable",$("#selDmzSwitch").val()); | |
var retXml = PostXml("firewall","fw_set_disable_info",configMap); | |
} | |
var retXml = PostXml("firewall","delete_dmz"); | |
if("OK" != $(retXml).find("setting_response").text()) { | |
alert("delete dmz ip failed."); | |
} | |
GetFWDmzInfo(); | |
} | |
function AddDmzIpAddr() { | |
ShowDlg("divDmzSetDlg",300,100); | |
var dmzdlgipctl = $("#divdmzdlgipControl").ip_address("divdmzdlgipControl"); | |
$("#lt_btnSave").click(function() { | |
var ipAddr = dmzdlgipctl.getIP(); | |
if(!IsIPv4(ipAddr)) { | |
$("#lt_dmz_ipAddrError").show().text(jQuery.i18n.prop("lt_ipAddrFormatError")); | |
return; | |
} | |
//enable DMZ | |
if(dmzMode != $("#selDmzSwitch").val()) { | |
var configMap = new Map(); | |
configMap.put("RGW/firewall/dmz_disable",$("#selDmzSwitch").val()); | |
var retXml = PostXml("firewall","fw_set_disable_info",configMap); | |
} | |
var entryMap = new Map(); | |
entryMap.put("RGW/firewall/dmz_dest_ip",ipAddr); | |
CloseDlg(); | |
var retXml = PostXml("firewall","fw_add_dmz_entry",entryMap); | |
if("OK" != $(retXml).find("setting_response").text()) { | |
alert("add dmz ip addr failed."); | |
} | |
GetFWDmzInfo(); | |
}); | |
} | |
function GetFWDmzInfo() { | |
var retXml = PostXml("firewall","fw_get_disable_info"); | |
dmzMode = $(retXml).find("dmz_disable").text(); | |
$("#selDmzSwitch").val(dmzMode); | |
if(1 == dmzMode) { | |
$("#divDmzIpAddr").hide(); | |
} else { | |
$("#divDmzIpAddr").show(); | |
GetDmzIpAddr(); | |
} | |
} | |
function GetDmzIpAddr() { | |
var retXml = PostXml("firewall","fw_get_dmz_info"); | |
var hostIpAddr = $(retXml).find("dmz_dest_ip").text(); | |
if(""==hostIpAddr) { | |
$("#divIpAddr").hide(); | |
$("#lt_dmz_btnAddDmzIpAddr").show(); | |
$("#lt_dmz_btnDeleteDmzIpAddr").hide(); | |
$("#lt_dmz_btnEditDmzIpAddr").hide(); | |
} else { | |
$("#divIpAddr").show(); | |
$("#lt_dmz_btnAddDmzIpAddr").hide(); | |
$("#lt_dmz_btnDeleteDmzIpAddr").show(); | |
$("#lt_dmz_btnEditDmzIpAddr").show(); | |
gDMZHostIpAdrrCtrl.setIP(hostIpAddr); | |
} | |
} | |
function ModifyDmzIpAddr() { | |
ShowDlg("divDmzSetDlg",100,100); | |
var dmzdlgipctl = $("#divdmzdlgipControl").ip_address("divdmzdlgipControl"); | |
var curIpAddr = gDMZHostIpAdrrCtrl.getIP(); | |
dmzdlgipctl.setIP(curIpAddr); | |
$("#lt_btnSave").click(function() { | |
var newIpAddr = dmzdlgipctl.getIP(); | |
CloseDlg(); | |
if(newIpAddr == curIpAddr) { | |
return; | |
} | |
//enable DMZ | |
if(dmzMode != $("#selDmzSwitch").val()) { | |
var configMap = new Map(); | |
configMap.put("RGW/firewall/dmz_disable",$("#selDmzSwitch").val()); | |
var retXml = PostXml("firewall","fw_set_disable_info",configMap); | |
} | |
var entryMap = new Map(); | |
entryMap.put("RGW/firewall/dmz_dest_ip", newIpAddr); | |
var retXml = PostXml("firewall","fw_edit_dmz_entry",entryMap); | |
if("OK" != $(retXml).find("setting_response").text()) { | |
alert("edit ip filter entry failed."); | |
} | |
GetFWDmzInfo(); | |
}); | |
} | |
this.SaveData = function() { | |
if(dmzMode == $("#selDmzSwitch").val()) { | |
return; | |
} | |
var configMap = new Map(); | |
configMap.put("RGW/firewall/dmz_disable",$("#selDmzSwitch").val()); | |
var retXml = PostXml("firewall","fw_set_disable_info",configMap); | |
if("OK" == $(retXml).find("setting_response").text()) { | |
GetFWDmzInfo(); | |
} else { | |
alert("dsm set failed."); | |
} | |
} | |
return this; | |
} | |
})(jQuery); | |