extends the download iso prompt with a "compression algorithm" drop down under advanced. User can configure there if a decompression algorithm should be used from the storage backend. The compression algorithm will be automatically guessed when calling query_url_metadata
Signed-off-by: Philipp Hufnagl <p.hufn...@proxmox.com> --- www/manager6/Makefile | 1 + www/manager6/form/DecompressionSelector.js | 13 +++++++++++++ www/manager6/window/DownloadUrlToStorage.js | 13 ++++++++++++- 3 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 www/manager6/form/DecompressionSelector.js diff --git a/www/manager6/Makefile b/www/manager6/Makefile index 59a5d8a7..5dfc8215 100644 --- a/www/manager6/Makefile +++ b/www/manager6/Makefile @@ -34,6 +34,7 @@ JSSRC= \ form/ContentTypeSelector.js \ form/ControllerSelector.js \ form/DayOfWeekSelector.js \ + form/DecompressionSelector.js \ form/DiskFormatSelector.js \ form/DiskStorageSelector.js \ form/FileSelector.js \ diff --git a/www/manager6/form/DecompressionSelector.js b/www/manager6/form/DecompressionSelector.js new file mode 100644 index 00000000..abd19316 --- /dev/null +++ b/www/manager6/form/DecompressionSelector.js @@ -0,0 +1,13 @@ +Ext.define('PVE.form.DecompressionSelector', { + extend: 'Proxmox.form.KVComboBox', + alias: ['widget.pveDecompressionSelector'], + config: { + deleteEmpty: false, + }, + comboItems: [ + ['__default__', Proxmox.Utils.NoneText], + ['lzo', 'LZO'], + ['gz', 'GZIP'], + ['zst', 'ZSTD'], + ], +}); diff --git a/www/manager6/window/DownloadUrlToStorage.js b/www/manager6/window/DownloadUrlToStorage.js index 90320da4..08a6412c 100644 --- a/www/manager6/window/DownloadUrlToStorage.js +++ b/www/manager6/window/DownloadUrlToStorage.js @@ -84,6 +84,7 @@ Ext.define('PVE.window.DownloadUrlToStorage', { filename: data.filename || "", size: (data.size && Proxmox.Utils.format_size(data.size)) || gettext("Unknown"), mimetype: data.mimetype || gettext("Unknown"), + compression: data.compression || '__default__', }); }, }); @@ -203,6 +204,17 @@ Ext.define('PVE.window.DownloadUrlToStorage', { change: 'setQueryEnabled', }, }, + { + xtype: 'pveDecompressionSelector', + name: 'compression', + fieldLabel: gettext('Decompression algorithm'), + allowBlank: true, + hasNoneOption: true, + value: '__default__', + cbind: { + hidden: get => get('content') !== 'iso', + }, + }, ], }, { @@ -223,7 +235,6 @@ Ext.define('PVE.window.DownloadUrlToStorage', { if (!me.storage) { throw "no storage ID specified"; } - me.callParent(); }, }); -- 2.39.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel