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/25 21:09:05 UTC

git commit: updated refs/heads/master to a5cff1d

Updated Branches:
  refs/heads/master eb21239e3 -> a5cff1dfd


CLOUDSTACK-4793: UI > Virtual Routers > Select View > group by zone > implement detailView of Zone, Total of Virtual Routers, Virtual Routers require upgrade.


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

Branch: refs/heads/master
Commit: a5cff1dfd585f2b1ff2db0cb6818ca73c20bb2f9
Parents: eb21239
Author: Jessica Wang <je...@apache.org>
Authored: Mon Nov 25 12:06:57 2013 -0800
Committer: Jessica Wang <je...@apache.org>
Committed: Mon Nov 25 12:08:55 2013 -0800

----------------------------------------------------------------------
 ui/scripts/system.js | 81 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 80 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a5cff1df/ui/scripts/system.js
----------------------------------------------------------------------
diff --git a/ui/scripts/system.js b/ui/scripts/system.js
index d6ced5b..d748b72 100644
--- a/ui/scripts/system.js
+++ b/ui/scripts/system.js
@@ -8735,7 +8735,86 @@
                                         });
                                     }
                                 });
-                            }
+                            },                                                       
+                            detailView: {
+                            	name: 'Virtual Routers group by zone',    
+                            	tabs: {
+                            		details: {
+                            			title: 'Virtual Routers group by zone',                            			
+                            			fields: [{
+                                            name: {
+                                                label: 'label.zone'
+                                            }
+                            			}, {
+                                            routerCount: {
+                                            	label: 'Total of Virtual Routers'
+                                            },
+                                            routerRequiresUpgrade: {
+                                            	label: 'Virtual Routers require upgrade',
+                                            	converter: function(args) {                                		
+                                            		if (args > 0) {
+                                            			return 'Yes';
+                                            		} else {
+                                            			return 'No';
+                                            		}
+                                            	}
+                                            }
+                                        }],  
+                                        dataProvider: function(args) {     
+                                        	$.ajax({
+	                                            url: createURL('listRouters'),
+	                                            data: {
+	                                            	zoneid: args.context.routerGroupByZone[0].id
+	                                            },
+	                                            async: false,
+	                                            success: function(json) {
+	                                            	if (json.listroutersresponse.count != undefined) {
+	                                            		args.context.routerGroupByZone[0].routerCount = json.listroutersresponse.count;    
+	                                            		    	                                            		
+	                                            		var routerCountFromAllPages = args.context.routerGroupByZone[0].routerCount;                                                	
+	                                                	var currentPage = 1;
+	                                                	var routerCountFromFirstPageToCurrentPage = 0;  
+	                                                	var routerRequiresUpgrade = 0;    	                                                	                                                	
+	                                                	var callListApiWithPage = function() {                                                		
+	                                                		$.ajax({
+	                                        					url: createURL('listRouters'),
+	                                                    		async: false,
+	                                                    		data: {    	                                                    			
+	                                                    			zoneid: args.context.routerGroupByZone[0].id,
+	                                                    			page: currentPage,
+	                                                    	        pagesize: pageSize //global variable
+	                                                    		},
+	                                                    		success: function(json) {                           			
+	                                                    			routerCountFromFirstPageToCurrentPage += json.listroutersresponse.router.length;    	                                                    			                                                    			
+	                                                    			var items = json.listroutersresponse.router;
+	                                                    			for (var i = 0; i < items.length; i++) {    	                                                    				
+	                                                    				if (items[i].requiresupgrade) {
+	                                                    					routerRequiresUpgrade++;
+	                                                    				}
+	                                                    			}      	                                                    			
+	                                                    			if (routerCountFromFirstPageToCurrentPage < routerCountFromAllPages) {
+	                                                    				currentPage++;
+	                                                    				callListApiWithPage();
+	                                                    			}                                                    			
+	                                                    		}
+	                                        				});                                                		
+	                                                	}    	                                                	
+	                                                	callListApiWithPage();                  	
+	                                                	args.context.routerGroupByZone[0].routerRequiresUpgrade = routerRequiresUpgrade;
+	                                            		
+	                                            	} else {
+	                                            		args.context.routerGroupByZone[0].routerCount = 0;
+	                                            		args.context.routerGroupByZone[0].routerRequiresUpgrade = 0;
+	                                            	}    	                                            		                                                
+	                                            }
+	                                        });                                        	
+                                        	args.response.success({
+                                        		data: args.context.routerGroupByZone[0]
+                                        	})
+                                        }
+                            		}
+                            	}
+                            }                                               
                         }
                     }                   
                 }