From dcf1dd1c55920a9105a1de2c32779c1a1d5f7d08 Mon Sep 17 00:00:00 2001 From: Hector Sanjuan Date: Thu, 5 Jul 2012 14:56:55 +0200 Subject: [PATCH] Bug #1336: Fix elements being removed from their current cluster. (cherry picked from commit d12d3e1401ac280c4bf44589a1f6e43b6c998c31) --- src/sunstone/public/js/plugins/clusters-tab.js | 11 ++++------- src/sunstone/public/js/plugins/datastores-tab.js | 13 ++++++++++++- src/sunstone/public/js/plugins/hosts-tab.js | 13 ++++++++++++- src/sunstone/public/js/plugins/vnets-tab.js | 13 ++++++++++++- 4 files changed, 40 insertions(+), 10 deletions(-) diff --git a/src/sunstone/public/js/plugins/clusters-tab.js b/src/sunstone/public/js/plugins/clusters-tab.js index f1424522c4..ddae85b026 100644 --- a/src/sunstone/public/js/plugins/clusters-tab.js +++ b/src/sunstone/public/js/plugins/clusters-tab.js @@ -127,10 +127,9 @@ var cluster_actions = { type: "single", call : OpenNebula.Cluster.delhost, callback : function (req) { - //Sunstone.runAction("Cluster.show",req.request.data[0]); + Sunstone.runAction("Host.show",req.request.data[0][1].host_id); }, - error : onError, - notify: true + error : onError }, "Cluster.adddatastore" : { @@ -138,7 +137,6 @@ var cluster_actions = { call : OpenNebula.Cluster.adddatastore, callback : function (req) { Sunstone.runAction("Datastore.show",req.request.data[0][1].ds_id); - //Sunstone.runAction("Cluster.show",req.request.data[0]); }, error : onError, }, @@ -147,7 +145,7 @@ var cluster_actions = { type: "single", call : OpenNebula.Cluster.deldatastore, callback : function (req) { - //Sunstone.runAction("Cluster.show",req.request.data[0]); + Sunstone.runAction("Datastore.show",req.request.data[0][1].ds_id); }, error : onError, }, @@ -165,10 +163,9 @@ var cluster_actions = { type: "single", call : OpenNebula.Cluster.delvnet, callback : function (req) { - //Sunstone.runAction("Cluster.show",req.request.data[0]); + Sunstone.runAction("Network.show",req.request.data[0][1].vnet_id); }, error : onError, - notify: true }, "Cluster.delete" : { diff --git a/src/sunstone/public/js/plugins/datastores-tab.js b/src/sunstone/public/js/plugins/datastores-tab.js index 99ad30a2e0..10c397b862 100644 --- a/src/sunstone/public/js/plugins/datastores-tab.js +++ b/src/sunstone/public/js/plugins/datastores-tab.js @@ -270,7 +270,18 @@ var datastore_actions = { call: function(params){ var cluster = params.data.extra_param; var ds = params.data.id; - Sunstone.runAction("Cluster.adddatastore",cluster,ds); + + if (cluster == -1){ + //get cluster name + var current_cluster = getValue(ds,1,5,dataTable_datastores); + //get cluster id + current_cluster = getValue(current_cluster, + 2,1,dataTable_clusters); + if (!current_cluster) return; + Sunstone.runAction("Cluster.deldatastore",current_cluster,ds) + } + else + Sunstone.runAction("Cluster.adddatastore",cluster,ds); }, elements: datastoreElements, notify:true, diff --git a/src/sunstone/public/js/plugins/hosts-tab.js b/src/sunstone/public/js/plugins/hosts-tab.js index f6ff4b2625..bcc32957be 100644 --- a/src/sunstone/public/js/plugins/hosts-tab.js +++ b/src/sunstone/public/js/plugins/hosts-tab.js @@ -275,7 +275,18 @@ var host_actions = { call: function(params){ var cluster = params.data.extra_param; var host = params.data.id; - Sunstone.runAction("Cluster.addhost",cluster,host); + + if (cluster == -1){ + //get cluster name + var current_cluster = getValue(host,1,3,dataTable_hosts); + //get cluster id + current_cluster = getValue(current_cluster, + 2,1,dataTable_clusters); + if (!current_cluster) return; + Sunstone.runAction("Cluster.delhost",current_cluster,host) + } + else + Sunstone.runAction("Cluster.addhost",cluster,host); }, callback: null, elements: hostElements, diff --git a/src/sunstone/public/js/plugins/vnets-tab.js b/src/sunstone/public/js/plugins/vnets-tab.js index bc61c3236d..929f1d3836 100644 --- a/src/sunstone/public/js/plugins/vnets-tab.js +++ b/src/sunstone/public/js/plugins/vnets-tab.js @@ -394,7 +394,18 @@ var vnet_actions = { call: function(params){ var cluster = params.data.extra_param; var vnet = params.data.id; - Sunstone.runAction("Cluster.addvnet",cluster,vnet); + + if (cluster == -1){ + //get cluster name + var current_cluster = getValue(vnet,1,5,dataTable_vNetworks); + //get cluster id + current_cluster = getValue(current_cluster, + 2,1,dataTable_clusters); + if (!current_cluster) return; + Sunstone.runAction("Cluster.delvnet",current_cluster,vnet) + } + else + Sunstone.runAction("Cluster.addvnet",cluster,vnet); }, callback: null, elements: vnElements,