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 <[email protected]> Authored: Tue Nov 5 15:11:05 2013 -0800 Committer: Jessica Wang <[email protected]> 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) + } } },
