fix #3505: ui/UploadToStorage: add checksum and algorithm

Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
This commit is contained in:
Lorenz Stechauner 2021-11-08 09:53:48 +01:00 committed by Dominik Csapak
parent f9f45aaca7
commit 2025820383

View File

@ -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',