ASR_BASE
Change-Id: Icf3719cc0afe3eeb3edc7fa80a2eb5199ca9dda1
diff --git a/marvell/webui/wwwLegacy/js/panel/wifi/wifiDmzSet.js b/marvell/webui/wwwLegacy/js/panel/wifi/wifiDmzSet.js
new file mode 100644
index 0000000..eeaf1be
--- /dev/null
+++ b/marvell/webui/wwwLegacy/js/panel/wifi/wifiDmzSet.js
@@ -0,0 +1,172 @@
+
+(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);
+
+
+
+
+