From df45347f3fe4b4d893374b498d024ffdb04d6dfc Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Wed, 25 Jan 2012 17:46:11 -0800 Subject: [PATCH] network page - detail view - Add Load Balancer tab - use a network's networkOffering's services instead of network's own services to determine whether or not to show Add Load Balancer tab --- ui/scripts/network.js | 41 +++++++++++++++++++++++++---------------- 1 file changed, 25 insertions(+), 16 deletions(-) diff --git a/ui/scripts/network.js b/ui/scripts/network.js index 568db03b213..0c5022df7ea 100644 --- a/ui/scripts/network.js +++ b/ui/scripts/network.js @@ -444,22 +444,31 @@ }, tabFilter: function(args) { - var showLbTab = false; - $(args.context.networks[0].service).each(function(){ - if(this.name == "Lb") { - $(this.capability).each(function() { - if(this.name == "ElasticLb") { - showLbTab = true; - return false; //break $.each loop - } - }); - return false; //break $.each loop - } - }); - + var networkOfferingHavingELB = false; + $.ajax({ + url: createURL("listNetworkOfferings&id=" + args.context.networks[0].networkofferingid), + dataType: "json", + async: false, + success: function(json) { + var networkoffering = json.listnetworkofferingsresponse.networkoffering[0]; + $(networkoffering.service).each(function(){ + var thisService = this; + if(thisService.name == "Lb") { + $(thisService.capability).each(function(){ + if(this.name == "ElasticLb" && this.value == "true") { + networkOfferingHavingELB = true; + return false; //break $.each() loop + } + }); + return false; //break $.each() loop + } + }); + } + }); + var hiddenTabs = []; - if(showLbTab == false) - hiddenTabs.push("loadBalancer"); + if(networkOfferingHavingELB == false) + hiddenTabs.push("addloadBalancer"); return hiddenTabs; }, @@ -592,7 +601,7 @@ } }, - loadBalancer: { + addloadBalancer: { title: 'Add load balancer', custom: function(args) { var context = args.context;