From a8e18f05298218d858c1833e52d2d3e4dd1ab5df Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 18 Oct 2012 11:27:06 -0700 Subject: [PATCH] cloudstack UI - Static NAT, Port Forwarding and Firewall Implementation on JuniperSRX - IP Address page - configuration - Firewall - call listNetworkOfferings API only when the screen is navigated from Guest Network section, but not from VPC section. --- ui/scripts/network.js | 58 +++++++++++++++++++++++-------------------- 1 file changed, 31 insertions(+), 27 deletions(-) diff --git a/ui/scripts/network.js b/ui/scripts/network.js index e8ee8618edb..299b70b6f97 100644 --- a/ui/scripts/network.js +++ b/ui/scripts/network.js @@ -2008,34 +2008,38 @@ { name: 'tcp', description: 'TCP' }, { name: 'udp', description: 'UDP' } ]; - //ICMP portocol is not supported in Firewall provided by JuniperSRX - $.ajax({ - url: createURL('listNetworkOfferings'), - data: { - id: args.context.networks[0].networkofferingid - }, - async: false, - success: function(json) { - var serviceArray = json.listnetworkofferingsresponse.networkoffering[0].service; - var FirewallProviderArrayIncludesJuniperSRX = false; - for(var i = 0; i < serviceArray.length; i++) { - if(serviceArray[i].name == "Firewall") { - var providerArray = serviceArray[i].provider; - for(var k = 0; k < providerArray.length; k++) { - if(providerArray[k].name == "JuniperSRX") { - FirewallProviderArrayIncludesJuniperSRX = true; - break; - } - } - break; - } - } - if(FirewallProviderArrayIncludesJuniperSRX == false) { - data.push({ name: 'icmp', description: 'ICMP' }); //show ICMP option only when provider is not JuniperSRX - } - } - }); + //ICMP portocol is not supported in Firewall provided by JuniperSRX + var FirewallProviderArrayIncludesJuniperSRX = false; + if('networks' in args.context) { + $.ajax({ + url: createURL('listNetworkOfferings'), + data: { + id: args.context.networks[0].networkofferingid + }, + async: false, + success: function(json) { + var serviceArray = json.listnetworkofferingsresponse.networkoffering[0].service; + + for(var i = 0; i < serviceArray.length; i++) { + if(serviceArray[i].name == "Firewall") { + var providerArray = serviceArray[i].provider; + for(var k = 0; k < providerArray.length; k++) { + if(providerArray[k].name == "JuniperSRX") { + FirewallProviderArrayIncludesJuniperSRX = true; + break; + } + } + break; + } + } + } + }); + } + if(FirewallProviderArrayIncludesJuniperSRX == false) { + data.push({ name: 'icmp', description: 'ICMP' }); //show ICMP option only when provider is not JuniperSRX + } + args.response.success({data: data}); } },