[pbs-devel] [PATCH proxmox-backup] Remove BackupFileDownloader.js file and Makefile entry

Daniel Tschlatscher d.tschlatscher at proxmox.com
Fri Apr 29 16:47:32 CEST 2022


While finishing up my previous patch series I stumbled upon this file
which is not referenced anywhere in the proxmox-backup repository nor
in any of the other repositories as far as I can tell (except in the
Makefile).
I searched far and wide for any occurences and tested the backup
explorer GUI without it, which still seems to work normally.

Introduced in: 98425309b0106c9174505614525a9561d98c56d7
References removed in: 3e395378bca5a844b2c820750cd57e4f2bfbacca

Therefore I think this can be safely considered dead code and be
removed. It shall remain in the pve-devel archives forevermore anyway.

Signed-off-by: Daniel Tschlatscher <d.tschlatscher at proxmox.com>
---
 www/Makefile                       |   1 -
 www/window/BackupFileDownloader.js | 146 -----------------------------
 2 files changed, 147 deletions(-)
 delete mode 100644 www/window/BackupFileDownloader.js

diff --git a/www/Makefile b/www/Makefile
index 697df9c0..98b61ba0 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -57,7 +57,6 @@ JSSRC=							\
 	config/CertificateView.js			\
 	config/NodeOptionView.js			\
 	window/ACLEdit.js				\
-	window/BackupFileDownloader.js			\
 	window/BackupGroupChangeOwner.js		\
 	window/CreateDirectory.js			\
 	window/DataStoreEdit.js				\
diff --git a/www/window/BackupFileDownloader.js b/www/window/BackupFileDownloader.js
deleted file mode 100644
index 81f88b10..00000000
--- a/www/window/BackupFileDownloader.js
+++ /dev/null
@@ -1,146 +0,0 @@
-Ext.define('PBS.window.BackupFileDownloader', {
-    extend: 'Ext.window.Window',
-    alias: 'widget.pbsBackupFileDownloader',
-
-    title: gettext('Download Files'),
-    bodyPadding: 10,
-
-    width: 400,
-    modal: true,
-    resizable: false,
-
-    layout: {
-	type: 'vbox',
-	align: 'stretch',
-    },
-
-    controller: {
-	xclass: 'Ext.app.ViewController',
-
-	buildUrl: function(baseurl, params) {
-	    let url = new URL(baseurl, window.location.origin);
-	    for (const [key, value] of Object.entries(params)) {
-		url.searchParams.append(key, value);
-	    }
-
-	    return url.href;
-	},
-
-	downloadFile: function() {
-	    let me = this;
-	    let view = me.getView();
-	    let combo = me.lookup('file');
-	    let file = combo.getValue();
-
-	    let idx = file.lastIndexOf('.');
-	    let filename = file.slice(0, idx);
-	    let atag = document.createElement('a');
-	    let params = view.params;
-	    params['file-name'] = file;
-	    atag.download = filename;
-	    atag.href = me.buildUrl(`${view.baseurl}/download-decoded`, params);
-	    atag.click();
-	},
-
-	changeFile: function(comob, value) {
-	    let me = this;
-	    let combo = me.lookup('file');
-	    let rec = combo.getStore().findRecord('filename', value, 0, false, true, true);
-	    let canDownload = rec.data['crypt-mode'] !== 'encrypt';
-	    me.lookup('encryptedHint').setVisible(!canDownload);
-	    me.lookup('signedHint').setVisible(rec.data['crypt-mode'] === 'sign-only');
-	    me.lookup('downloadBtn').setDisabled(!canDownload);
-	},
-
-	init: function(view) {
-	    let me = this;
-	    if (!view.baseurl) {
-		throw "no baseurl given";
-	    }
-
-	    if (!view.params) {
-		throw "no params given";
-	    }
-
-	    if (!view.files) {
-		throw "no files given";
-	    }
-
-	    me.lookup('file').getStore().loadData(view.files, false);
-	},
-
-	control: {
-	    'proxmoxComboGrid': {
-		change: 'changeFile',
-	    },
-	    'button': {
-		click: 'downloadFile',
-	    },
-	},
-    },
-
-    items: [
-	{
-	    xtype: 'proxmoxComboGrid',
-	    valueField: 'filename',
-	    allowBlank: false,
-	    displayField: 'filename',
-	    reference: 'file',
-	    emptyText: gettext('No file selected'),
-	    fieldLabel: gettext('File'),
-	    store: {
-		fields: ['filename', 'size', 'crypt-mode'],
-		idProperty: ['filename'],
-	    },
-	    listConfig: {
-		emptyText: gettext('No Data'),
-		columns: [
-		    {
-			text: gettext('Filename'),
-			dataIndex: 'filename',
-			renderer: Ext.String.htmlEncode,
-			flex: 1,
-		    },
-		    {
-			text: gettext('Size'),
-			dataIndex: 'size',
-			renderer: val => val === undefined ? '' : Proxmox.Utils.format_size(val),
-		    },
-		    {
-			text: gettext('Encrypted'),
-			dataIndex: 'crypt-mode',
-			renderer: function(value) {
-			    let mode = -1;
-			    if (value !== undefined) {
-				mode = PBS.Utils.cryptmap.indexOf(value);
-			    }
-			    return PBS.Utils.cryptText[mode] || Proxmox.Utils.unknownText;
-			},
-		    },
-		],
-	    },
-	},
-	{
-	    xtype: 'displayfield',
-	    userCls: 'pmx-hint',
-	    reference: 'signedHint',
-	    hidden: true,
-	    value: gettext('Note: Signatures of signed files will not be verified on the server. Please use the client to do this.'),
-	},
-	{
-	    xtype: 'displayfield',
-	    userCls: 'pmx-hint',
-	    reference: 'encryptedHint',
-	    hidden: true,
-	    value: gettext('Encrypted Files cannot be decoded on the server directly. Please use the client where the decryption key is located.'),
-	},
-    ],
-
-    buttons: [
-	{
-	    text: gettext('Download'),
-	    reference: 'downloadBtn',
-	    disabled: true,
-	},
-    ],
-});
-- 
2.30.2






More information about the pbs-devel mailing list