Signed-off-by: Lorenz Stechauner <l.stechau...@proxmox.com>
---
 www/manager6/window/UploadToStorage.js | 40 ++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/www/manager6/window/UploadToStorage.js 
b/www/manager6/window/UploadToStorage.js
index e7db41fb..489be9dc 100644
--- a/www/manager6/window/UploadToStorage.js
+++ b/www/manager6/window/UploadToStorage.js
@@ -62,6 +62,16 @@ Ext.define('PVE.window.UploadToStorage', {
            const filename = filenameField.getValue();
            filenameField.setDisabled(true);
 
+           const algorithmField = form.findField('checksum-algorithm');
+           algorithmField.setDisabled(true);
+           if (algorithmField.getValue() !== '__default__') {
+               fd.append("checksum-algorithm", algorithmField.getValue());
+
+               const checksumField = form.findField('checksum');
+               fd.append("checksum", checksumField.getValue());
+               checksumField.setDisabled(true);
+           }
+
            fd.append("filename", file, filename);
 
            pbar.setVisible(true);
@@ -115,6 +125,16 @@ Ext.define('PVE.window.UploadToStorage', {
            vm.set('size', (fileInput.files[0] && 
Proxmox.Utils.format_size(fileInput.files[0].size)) || '-');
            vm.set('mimetype', (fileInput.files[0] && fileInput.files[0].type) 
|| '-');
        },
+
+       hashChange: function(field, value) {
+           const checksum = this.lookup('downloadUrlChecksum');
+           if (value === '__default__') {
+               checksum.setDisabled(true);
+               checksum.setValue("");
+           } else {
+               checksum.setDisabled(false);
+           }
+       },
     },
 
     items: [
@@ -169,6 +189,26 @@ Ext.define('PVE.window.UploadToStorage', {
                        value: '{mimetype}',
                    },
                },
+               {
+                   xtype: 'pveHashAlgorithmSelector',
+                   name: 'checksum-algorithm',
+                   fieldLabel: gettext('Hash algorithm'),
+                   allowBlank: true,
+                   hasNoneOption: true,
+                   value: '__default__',
+                   listeners: {
+                       change: 'hashChange',
+                   },
+               },
+               {
+                   xtype: 'textfield',
+                   name: 'checksum',
+                   fieldLabel: gettext('Checksum'),
+                   allowBlank: false,
+                   disabled: true,
+                   emptyText: gettext('none'),
+                   reference: 'downloadUrlChecksum',
+               },
                {
                    xtype: 'progressbar',
                    text: 'Ready',
-- 
2.30.2



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

Reply via email to