diff --git a/src/sunstone/models/SunstoneServer.rb b/src/sunstone/models/SunstoneServer.rb index 0ed284f9a7..9e56959a3f 100644 --- a/src/sunstone/models/SunstoneServer.rb +++ b/src/sunstone/models/SunstoneServer.rb @@ -56,22 +56,26 @@ class SunstoneServer ############################################################################ # ############################################################################ - def get_pool(kind) - user_flag = -2 + def get_pool(kind,gid) pool = case kind when "group" then GroupPoolJSON.new(@client) when "host" then HostPoolJSON.new(@client) - when "image" then ImagePoolJSON.new(@client, user_flag) - when "template" then TemplatePoolJSON.new(@client, user_flag) - when "vm" then VirtualMachinePoolJSON.new(@client, user_flag) - when "vnet" then VirtualNetworkPoolJSON.new(@client, user_flag) + when "image" then ImagePoolJSON.new(@client) + when "template" then TemplatePoolJSON.new(@client) + when "vm" then VirtualMachinePoolJSON.new(@client) + when "vnet" then VirtualNetworkPoolJSON.new(@client) when "user" then UserPoolJSON.new(@client) else error = Error.new("Error: #{kind} resource not supported") return [404, error.to_json] end - rc = pool.info + rc = case kind + when "group","host","user" then pool.info + else + gid != "0" ? pool.info_group : pool.info_all + end + if OpenNebula.is_error?(rc) return [500, rc.to_json] else diff --git a/src/sunstone/public/js/opennebula.js b/src/sunstone/public/js/opennebula.js index 6c9d1a3c0b..dab77dd8a3 100644 --- a/src/sunstone/public/js/opennebula.js +++ b/src/sunstone/public/js/opennebula.js @@ -1645,12 +1645,12 @@ var OpenNebula = { } } }); - }, - - "chown": function(params) - { - OpenNebula.Helper.chown(params,OpenNebula.Group.resource,"group"); } + + // "chown": function(params) + // { + // OpenNebula.Helper.chown(params,OpenNebula.Group.resource,"group"); + // } }, "User": { @@ -1824,67 +1824,6 @@ var OpenNebula = { var action = OpenNebula.Helper.action(method, {"group_id": gid}); var request = OpenNebula.Helper.request(OpenNebula.User.resource,method, [id, gid]); - $.ajax({ - url: "user/" + id + "/action", - type: "POST", - data: JSON.stringify(action), - success: function() - { - if (callback) - { - callback(request); - } - }, - error: function(response) - { - if (callback_error) - { - callback_error(request, OpenNebula.Error(response)); - } - } - }); - }, - - "addgroup" : function(params){ - var callback = params.success; - var callback_error = params.error; - var id = params.data.id; - var gid = params.data.extra_param; - - var method = "addgroup"; - var action = OpenNebula.Helper.action(method, {"group_id": gid}); - var request = OpenNebula.Helper.request(OpenNebula.User.resource,method, [id, gid]); - - $.ajax({ - url: "user/" + id + "/action", - type: "POST", - data: JSON.stringify(action), - success: function() - { - if (callback) - { - callback(request); - } - }, - error: function(response) - { - if (callback_error) - { - callback_error(request, OpenNebula.Error(response)); - } - } - }); - }, - "delgroup" : function(params){ - var callback = params.success; - var callback_error = params.error; - var id = params.data.id; - var gid = params.data.extra_param; - - var method = "delgroup"; - var action = OpenNebula.Helper.action(method, {"group_id": gid}); - var request = OpenNebula.Helper.request(OpenNebula.User.resource,method, [id, gid]); - $.ajax({ url: "user/" + id + "/action", type: "POST", @@ -1905,6 +1844,67 @@ var OpenNebula = { } }); } + + // "addgroup" : function(params){ + // var callback = params.success; + // var callback_error = params.error; + // var id = params.data.id; + // var gid = params.data.extra_param; + + // var method = "addgroup"; + // var action = OpenNebula.Helper.action(method, {"group_id": gid}); + // var request = OpenNebula.Helper.request(OpenNebula.User.resource,method, [id, gid]); + + // $.ajax({ + // url: "user/" + id + "/action", + // type: "POST", + // data: JSON.stringify(action), + // success: function() + // { + // if (callback) + // { + // callback(request); + // } + // }, + // error: function(response) + // { + // if (callback_error) + // { + // callback_error(request, OpenNebula.Error(response)); + // } + // } + // }); + // }, + // "delgroup" : function(params){ + // var callback = params.success; + // var callback_error = params.error; + // var id = params.data.id; + // var gid = params.data.extra_param; + + // var method = "delgroup"; + // var action = OpenNebula.Helper.action(method, {"group_id": gid}); + // var request = OpenNebula.Helper.request(OpenNebula.User.resource,method, [id, gid]); + + // $.ajax({ + // url: "user/" + id + "/action", + // type: "POST", + // data: JSON.stringify(action), + // success: function() + // { + // if (callback) + // { + // callback(request); + // } + // }, + // error: function(response) + // { + // if (callback_error) + // { + // callback_error(request, OpenNebula.Error(response)); + // } + // } + // }); + // } }, "Image": { diff --git a/src/sunstone/public/js/plugins/dashboard-tab.js b/src/sunstone/public/js/plugins/dashboard-tab.js index 4e5f8e7503..08914d197b 100644 --- a/src/sunstone/public/js/plugins/dashboard-tab.js +++ b/src/sunstone/public/js/plugins/dashboard-tab.js @@ -99,7 +99,7 @@ var dashboard_tab_content =