CS-15863: cloudstack 3.0 UI - (1) extend multiEdit widget to be able to hide 
actions upon an each item's properties.

(2) IP Addresses page - load balancer listing - VM listing - hide destroy 
action for autoscale VM.


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

Branch: refs/heads/master
Commit: ce8fe90aae7467a38ca527a40c1712d91056a740
Parents: 2c98ec4
Author: Jessica Wang <[email protected]>
Authored: Fri Aug 17 11:42:31 2012 -0700
Committer: Vijay Venkatachalam <[email protected]>
Committed: Fri Nov 16 10:56:53 2012 +0530

----------------------------------------------------------------------
 ui/scripts/network.js              |    5 +++++
 ui/scripts/ui/widgets/multiEdit.js |    6 +++++-
 2 files changed, 10 insertions(+), 1 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/ce8fe90a/ui/scripts/network.js
----------------------------------------------------------------------
diff --git a/ui/scripts/network.js b/ui/scripts/network.js
index 0c1a5a3..353be31 100644
--- a/ui/scripts/network.js
+++ b/ui/scripts/network.js
@@ -2765,6 +2765,11 @@
                               success: function(data) {
                                 lbInstances = 
data.listloadbalancerruleinstancesresponse.loadbalancerruleinstance ?
                                   
data.listloadbalancerruleinstancesresponse.loadbalancerruleinstance : [];
+                                                                               
                                                                                
                                                                                
                                                                                
                                                                        
+                                $(lbInstances).each(function() {               
                                                                                
                                                                                
                                                                                
+                                                                               
                                                        
if(this.name.indexOf('AutoScale-LB-') > -1) //autoscale VM is not allowed to be 
deleted manually. So, hide destroy button
+                                    this._hideActions = ['destroy'];           
                                                                                
                                                                                
+                                                                               
                                                });                             
                                
                               },
                               error: function(data) {
                                 
args.response.error(parseXMLHttpResponse(data));

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/ce8fe90a/ui/scripts/ui/widgets/multiEdit.js
----------------------------------------------------------------------
diff --git a/ui/scripts/ui/widgets/multiEdit.js 
b/ui/scripts/ui/widgets/multiEdit.js
index ba5e709..bccbab0 100755
--- a/ui/scripts/ui/widgets/multiEdit.js
+++ b/ui/scripts/ui/widgets/multiEdit.js
@@ -626,7 +626,11 @@
           var $itemActions = $('<td>').addClass('actions item-actions');
 
           $.each(itemActions, function(itemActionID, itemAction) {
-            if (itemActionID == 'add') return true;
+            if (itemActionID == 'add') 
+                                                 return true;
+                                                                               
        
+                                               if(item._hideActions != null && 
$.inArray(itemActionID, item._hideActions) > -1)
+              return true;     
 
             var $itemAction = 
$('<div>').addClass('action').addClass(itemActionID);
 

Reply via email to