which support nested pools. mostly straight-forward, only pool deletion and the
members grid need some special attention.

Signed-off-by: Fabian Grünbichler <f.gruenbich...@proxmox.com>
---

Notes:
    Thanks Dominik for pointing me at the 'root' part of the proxy :)

 www/manager6/dc/PoolView.js      |  3 +++
 www/manager6/grid/PoolMembers.js | 14 ++++++++------
 www/manager6/pool/StatusView.js  |  2 +-
 3 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/www/manager6/dc/PoolView.js b/www/manager6/dc/PoolView.js
index db97cbe72..741b2025b 100644
--- a/www/manager6/dc/PoolView.js
+++ b/www/manager6/dc/PoolView.js
@@ -31,6 +31,9 @@ Ext.define('PVE.dc.PoolView', {
            callback: function() {
                reload();
            },
+           getUrl: function(rec) {
+               return '/pools/?poolid=' + rec.getId();
+           },
        });
 
        var run_editor = function() {
diff --git a/www/manager6/grid/PoolMembers.js b/www/manager6/grid/PoolMembers.js
index 74950d80e..75f20cab1 100644
--- a/www/manager6/grid/PoolMembers.js
+++ b/www/manager6/grid/PoolMembers.js
@@ -17,8 +17,9 @@ Ext.define('PVE.pool.AddVM', {
            throw "no pool specified";
        }
 
-       me.url = "/pools/" + me.pool;
+       me.url = '/pools/';
        me.method = 'PUT';
+       me.extraRequestParams.poolid = me.pool;
 
        var vmsField = Ext.create('Ext.form.field.Text', {
            name: 'vms',
@@ -120,8 +121,9 @@ Ext.define('PVE.pool.AddStorage', {
 
        me.isCreate = true;
        me.isAdd = true;
-       me.url = "/pools/" + me.pool;
+       me.url = "/pools/";
        me.method = 'PUT';
+       me.extraRequestParams.poolid = me.pool;
 
        Ext.apply(me, {
            subject: gettext('Storage'),
@@ -168,8 +170,8 @@ Ext.define('PVE.grid.PoolMembers', {
            ],
            proxy: {
                type: 'proxmox',
-               root: 'data.members',
-               url: "/api2/json/pools/" + me.pool,
+               root: 'data[0].members',
+               url: "/api2/json/pools/?poolid=" + me.pool,
            },
        });
 
@@ -192,7 +194,7 @@ Ext.define('PVE.grid.PoolMembers', {
                                         "'" + rec.data.id + "'");
            },
            handler: function(btn, event, rec) {
-               var params = { 'delete': 1 };
+               var params = { 'delete': 1, poolid: me.pool };
                if (rec.data.type === 'storage') {
                    params.storage = rec.data.storage;
                } else if (rec.data.type === 'qemu' || rec.data.type === 'lxc' 
|| rec.data.type === 'openvz') {
@@ -202,7 +204,7 @@ Ext.define('PVE.grid.PoolMembers', {
                }
 
                Proxmox.Utils.API2Request({
-                   url: '/pools/' + me.pool,
+                   url: '/pools/',
                    method: 'PUT',
                    params: params,
                    waitMsgTarget: me,
diff --git a/www/manager6/pool/StatusView.js b/www/manager6/pool/StatusView.js
index 302ae5ab0..3d46b3b1a 100644
--- a/www/manager6/pool/StatusView.js
+++ b/www/manager6/pool/StatusView.js
@@ -24,7 +24,7 @@ Ext.define('PVE.pool.StatusView', {
        };
 
        Ext.apply(me, {
-           url: "/api2/json/pools/" + pool,
+           url: "/api2/json/pools/?poolid=" + pool,
            rows: rows,
        });
 
-- 
2.39.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to