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/06/17 20:31:58 UTC

git commit: updated refs/heads/master-6-17-stable to 3e3e583

Updated Branches:
  refs/heads/master-6-17-stable c0af861a7 -> 3e3e5830b


CLOUDSTACK-869: Add VPC dialog - add Public LB Provider dropdown, remove VPC Offering dropdown. When Public LB Provider is selected as Netscaler, pass "Default VPC offering with Netscaler" to createVPC API. When Public LB Provider is selected as VpcVirtualRouter, pass "Default VPC Offering" to createVPC API.


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

Branch: refs/heads/master-6-17-stable
Commit: 3e3e5830b45eeba16b3dacfb5475d53d8d2dee27
Parents: c0af861
Author: Jessica Wang <je...@apache.org>
Authored: Mon Jun 17 10:55:50 2013 -0700
Committer: Jessica Wang <je...@apache.org>
Committed: Mon Jun 17 11:30:50 2013 -0700

----------------------------------------------------------------------
 ui/scripts/network.js | 125 +++++++++++++++++++++------------------------
 1 file changed, 57 insertions(+), 68 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/3e3e5830/ui/scripts/network.js
----------------------------------------------------------------------
diff --git a/ui/scripts/network.js b/ui/scripts/network.js
index fb63e4b..ddde9c9 100755
--- a/ui/scripts/network.js
+++ b/ui/scripts/network.js
@@ -4532,78 +4532,67 @@
                     docID: 'helpVPCDomain',
                     label: 'label.DNS.domain.for.guest.networks'
                   },
-
-                  loadbalancer:{        //Support for Netscaler as an external device for load balancing
-                    label:'Load Balancer',
+                  publicLoadBalancerProvider:{        
+                    label:'Public Load Balancer Provider',
                     select:function(args){
-                         $.ajax({
-                          url:createURL('listVPCOfferings&listall=true'),
-                          dataType:'json',
-                          success:function(json){
-                        var items=[];
-                        var vpcObj = json.listvpcofferingsresponse.vpcoffering;
-                        $(vpcObj).each(function(){
-                          items.push({id:this.id , description:this.name});
-                          });
-                        args.response.success({data:items});
-
-                         }
-
-                     });
-
-                   }
-
-                }
-
+                      var items = [];
+                      items.push({id: 'VpcVirtualRouter', description: 'VpcVirtualRouter'});
+                      items.push({id: 'Netscaler', description: 'Netscaler'});
+                      args.response.success({data: items});
+                    }
+                  }
                 }
               },              
-              action: function(args) {										
-						/*		var defaultvpcofferingid;
-								$.ajax({
-								  url: createURL("listVPCOfferings"),
-									dataType: "json",
-									data: {
-									  isdefault: true
-									},
-								  async: false,
-									success: function(json) {
-									  defaultvpcofferingid = json.listvpcofferingsresponse.vpcoffering[0].id;
-									}
-								});*/
-								
-								var dataObj = {
-									name: args.data.name,
-									displaytext: args.data.displaytext,
-									zoneid: args.data.zoneid,
-									cidr: args.data.cidr,
-									vpcofferingid: args.data.loadbalancer    // Support for external load balancer
-								};
-								
-								if(args.data.networkdomain != null && args.data.networkdomain.length > 0)
-								  $.extend(dataObj, { networkdomain: args.data.networkdomain });								
-								
-								$.ajax({
-                  url: createURL("createVPC"),
-                  dataType: "json",
-									data: dataObj,
-                  async: true,
-                  success: function(json) {
-                    var jid = json.createvpcresponse.jobid;
-                    args.response.success(
-                      {_custom:
-                        {jobId: jid,
-                          getUpdatedItem: function(json) {													  
-                            return json.queryasyncjobresultresponse.jobresult.vpc;
-                          }
+              action: function(args) {	
+                var vpcOfferingName;
+                if (args.data.publicLoadBalancerProvider == 'VpcVirtualRouter')
+                  vpcOfferingName = 'Default VPC offering';
+                else if (args.data.publicLoadBalancerProvider == 'Netscaler')
+                  vpcOfferingName = 'Default VPC  offering with Netscaler';
+                                
+                $.ajax({
+                  url:createURL('listVPCOfferings'),
+                  data: {
+                    name: vpcOfferingName
+                  },                  
+                  success:function(json){   
+                    var vpcofferingid = json.listvpcofferingsresponse.vpcoffering[0].id;     
+                                       
+                    var dataObj = {
+                      name: args.data.name,
+                      displaytext: args.data.displaytext,
+                      zoneid: args.data.zoneid,
+                      cidr: args.data.cidr,
+                      vpcofferingid: vpcofferingid    
+                    };
+                    
+                    if(args.data.networkdomain != null && args.data.networkdomain.length > 0)
+                      $.extend(dataObj, { networkdomain: args.data.networkdomain });                
+                    
+                    $.ajax({
+                      url: createURL("createVPC"),
+                      dataType: "json",
+                      data: dataObj,
+                      async: true,
+                      success: function(json) {
+                        var jid = json.createvpcresponse.jobid;
+                        args.response.success(
+                          {_custom:
+                            {jobId: jid,
+                              getUpdatedItem: function(json) {                            
+                                return json.queryasyncjobresultresponse.jobresult.vpc;
+                              }
+                            }
+                          });
+                      },
+                      error: function(data) {
+                          args.response.error(parseXMLHttpResponse(data));
                         }
-                      });
-                  },
-                  error: function(data) {
-                      args.response.error(parseXMLHttpResponse(data));
-                    }
-                });								
-              },
-             
+                    });     
+                  }
+                });
+                
+              },             
 							notification: {
                 poll: pollAsyncJobResult
               }