This is done by changing the StorageSelector to a DiskStorageSelector.

Using the hideFormatWhenStorageEmpty option of the DiskStorageSelector
to hide the DiskFormatSelector when no storage is selected, as the
DiskFormatSelector would show the default value qcow2 in a disabled
state, which could confuse users.

Signed-off-by: Markus Frank <m.fr...@proxmox.com>
---
 www/manager6/window/Restore.js | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/www/manager6/window/Restore.js b/www/manager6/window/Restore.js
index 6efe1313..9600cdab 100644
--- a/www/manager6/window/Restore.js
+++ b/www/manager6/window/Restore.js
@@ -44,8 +44,11 @@ Ext.define('PVE.window.Restore', {
            if (values['live-restore']) {
                params['live-restore'] = 1;
            }
-           if (values.storage) {
-               params.storage = values.storage;
+           if (values.hdstorage) {
+               params.storage = values.hdstorage;
+           }
+           if (values.diskformat) {
+               params['disk-format'] = values.diskformat;
            }
 
            ['bwlimit', 'cores', 'name', 'memory', 'sockets'].forEach(opt => {
@@ -141,9 +144,10 @@ Ext.define('PVE.window.Restore', {
                            
view.lookupReference(`${key}Field`).setEmptyText(value);
                        }
                    });
-
+                   let diskformat = 
view.down('pveDiskFormatSelector[name=diskformat]');
+                   diskformat.setVisible(false);
                    if (!allStoragesAvailable) {
-                       let storagesel = 
view.down('pveStorageSelector[name=storage]');
+                       let storagesel = 
view.down('pveStorageSelector[name=hdstorage]');
                        storagesel.allowBlank = false;
                        storagesel.setEmptyText('');
                    }
@@ -165,12 +169,14 @@ Ext.define('PVE.window.Restore', {
            throw "no vmtype specified";
        }
 
-       let storagesel = Ext.create('PVE.form.StorageSelector', {
+       let storagesel = Ext.create('PVE.form.DiskStorageSelector', {
            nodename: me.nodename,
            name: 'storage',
            value: '',
            fieldLabel: gettext('Storage'),
            storageContent: me.vmtype === 'lxc' ? 'rootdir' : 'images',
+           hideSize: true,
+           hideFormatWhenStorageEmpty: true,
            // when restoring a container without specifying a storage, the 
backend defaults
            // to 'local', which is unintuitive and 'rootdir' might not even be 
allowed on it
            allowBlank: me.vmtype !== 'lxc',
-- 
2.39.5



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

Reply via email to