You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by je...@apache.org on 2013/11/06 00:11:40 UTC

git commit: updated refs/heads/4.2 to 648f104

Updated Branches:
  refs/heads/4.2 5721cfdc6 -> 648f10401


CLOUDSTACK-5048: UI > Create Load Balancing rule > hide Autoscale button if LB provider is not Netscaler since Autoscale is only supported on Netscaler, but not on other provider like VirtualRouter.


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/648f1040
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/648f1040
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/648f1040

Branch: refs/heads/4.2
Commit: 648f10401fb7e3590881321c8fce1a3223e0bfd3
Parents: 5721cfd
Author: Jessica Wang <je...@apache.org>
Authored: Tue Nov 5 15:11:05 2013 -0800
Committer: Jessica Wang <je...@apache.org>
Committed: Tue Nov 5 15:11:05 2013 -0800

----------------------------------------------------------------------
 ui/scripts/network.js | 40 +++++++++++++++++++++++++++++++++++-----
 1 file changed, 35 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/648f1040/ui/scripts/network.js
----------------------------------------------------------------------
diff --git a/ui/scripts/network.js b/ui/scripts/network.js
index 9a343e1..4595834 100755
--- a/ui/scripts/network.js
+++ b/ui/scripts/network.js
@@ -3375,11 +3375,41 @@
                                                     buttonLabel: 'label.configure',
                                                     action: cloudStack.uiCustom.autoscaler(cloudStack.autoscaler)
                                                 },
-                                                isHidden: function(args) {
-                                                    // return 2 == hide header and form, as well as returned item column
-                                                    // return 2;
-
-                                                    return false;
+                                                isHidden: function(args) {                                                
+                                                    var lbProviderIsNetscaler = false;
+                                                    $.ajax({
+                                                    	url: createURL('listNetworkOfferings'),
+                                                    	data: {
+                                                    		id: args.context.networks[0].networkofferingid
+                                                    	},
+                                                    	async: false,
+                                                    	success: function(json) {                                                    		
+                                                    		var networkOffering = json.listnetworkofferingsresponse.networkoffering[0];                                                    		
+                                                    		var services = networkOffering.service;
+                                                    		if (services != null) {
+	                                                    		for (var i = 0; i < services.length; i++) {
+	                                                    			if (services[i].name == 'Lb') {
+	                                                    				var providers = services[i].provider;
+	                                                    				if (providers != null) {
+		                                                    				for (var k = 0; k < providers.length; k++) {
+		                                                    					if (providers[k].name == 'Netscaler') {
+		                                                    						lbProviderIsNetscaler = true;
+		                                                    						break;
+		                                                    					}
+		                                                    				}  
+	                                                    				}
+	                                                    				break;
+	                                                    			}
+	                                                    		}
+                                                    		}
+                                                    	}
+                                                    });                                                       
+                                                    
+                                                    if (lbProviderIsNetscaler == true) { //AutoScale is only supported on Netscaler (but not on any other provider like VirtualRouter)
+                                                    	return false; //show AutoScale button
+                                                    } else {
+                                                    	return 2; //hide Autoscale button (both header and form)
+                                                    }                                                	
                                                 }
                                             },