Updated Branches:
  refs/heads/master 53d09c6f1 -> aa223e578

CLOUDSTACK-4308: UI > volume page > if hypervisor is KVM, show/hide 
takeSnapshot, recurringSnapshot action upon KVMsnapshotenabled property 
returned by listCapabilities API.


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

Branch: refs/heads/master
Commit: aa223e5786b81c1ac617f445331e38f8bc02ecfd
Parents: 53d09c6
Author: Jessica Wang <[email protected]>
Authored: Thu Aug 15 10:25:32 2013 -0700
Committer: Jessica Wang <[email protected]>
Committed: Thu Aug 15 10:27:44 2013 -0700

----------------------------------------------------------------------
 ui/scripts/cloudStack.js      | 11 +++++++++++
 ui/scripts/sharedFunctions.js |  1 +
 ui/scripts/storage.js         |  8 ++++++--
 3 files changed, 18 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/aa223e57/ui/scripts/cloudStack.js
----------------------------------------------------------------------
diff --git a/ui/scripts/cloudStack.js b/ui/scripts/cloudStack.js
index df6fea6..7020c21 100644
--- a/ui/scripts/cloudStack.js
+++ b/ui/scripts/cloudStack.js
@@ -168,6 +168,11 @@
                             expires: 1
                         });
 
+                        g_KVMsnapshotenabled = 
json.listcapabilitiesresponse.capability.KVMsnapshotenabled; //boolean
+                        $.cookie('KVMsnapshotenabled', g_KVMsnapshotenabled, {
+                            expires: 1
+                        });                        
+                        
                         if 
(json.listcapabilitiesresponse.capability.userpublictemplateenabled != null) {
                             g_userPublicTemplateEnabled = 
json.listcapabilitiesresponse.capability.userpublictemplateenabled.toString(); 
//convert boolean to string if it's boolean
                             $.cookie('userpublictemplateenabled', 
g_userPublicTemplateEnabled, {
@@ -332,6 +337,11 @@
                                     expires: 1
                                 });
 
+                                g_KVMsnapshotenabled = 
json.listcapabilitiesresponse.capability.KVMsnapshotenabled; //boolean
+                                $.cookie('KVMsnapshotenabled', 
g_KVMsnapshotenabled, {
+                                    expires: 1
+                                });   
+                                
                                 if 
(json.listcapabilitiesresponse.capability.userpublictemplateenabled != null) {
                                     g_userPublicTemplateEnabled = 
json.listcapabilitiesresponse.capability.userpublictemplateenabled.toString(); 
//convert boolean to string if it's boolean
                                     $.cookie('userpublictemplateenabled', 
g_userPublicTemplateEnabled, {
@@ -432,6 +442,7 @@
                         g_timezoneoffset = null;
                         g_timezone = null;
                         g_supportELB = null;
+                        g_KVMsnapshotenabled = null;
                         g_loginCmdText = null;
 
                         $.cookie('JSESSIONID', null);

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/aa223e57/ui/scripts/sharedFunctions.js
----------------------------------------------------------------------
diff --git a/ui/scripts/sharedFunctions.js b/ui/scripts/sharedFunctions.js
index 2fab2e5..b24847a 100644
--- a/ui/scripts/sharedFunctions.js
+++ b/ui/scripts/sharedFunctions.js
@@ -25,6 +25,7 @@ var g_enableLogging = false;
 var g_timezoneoffset = null;
 var g_timezone = null;
 var g_supportELB = null;
+var g_KVMsnapshotenabled =  null;
 var g_userPublicTemplateEnabled = "true";
 var g_cloudstackversion = null;
 var g_queryAsyncJobResultInterval = 3000;

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/aa223e57/ui/scripts/storage.js
----------------------------------------------------------------------
diff --git a/ui/scripts/storage.js b/ui/scripts/storage.js
index d5ede62..a4d00c6 100644
--- a/ui/scripts/storage.js
+++ b/ui/scripts/storage.js
@@ -1865,8 +1865,12 @@
         }
 
         if (jsonObj.hypervisor != "Ovm" && jsonObj.state == "Ready") {
-            allowedActions.push("takeSnapshot");
-            allowedActions.push("recurringSnapshot");
+               if(jsonObj.hypervisor != 'KVM' 
+                       || (jsonObj.hypervisor == 'KVM' && g_KVMsnapshotenabled 
== true) ) {
+                   allowedActions.push("takeSnapshot");
+                   allowedActions.push("recurringSnapshot");
+               }            
+            
             if (jsonObj.type == "DATADISK") {
                 allowedActions.push("resize");
             }

Reply via email to