[pve-devel] [PATCH pve-manager] fix #4393: ui: storage backup view: make pbs-specific columns sortable

Stefan Hanreich s.hanreich at proxmox.com
Fri Dec 16 13:45:06 CET 2022


The sort order is analogous to how it behaves in the datastore content
overview in pbs.

This means sorting in ascending order behaves as follows:

Verify State
* failed
* none
* ok

Encryption
* no
* yes

For the encryption state there is theoretically a distinction between
signed and encrypted, but as far as I can tell we do not render this
distinction in PVE, which is why I chose to not make this distinction
for sorting as well.

Signed-off-by: Stefan Hanreich <s.hanreich at proxmox.com>
---
 www/manager6/Utils.js              |  7 +++++++
 www/manager6/storage/BackupView.js | 12 ++++++++++++
 2 files changed, 19 insertions(+)

diff --git a/www/manager6/Utils.js b/www/manager6/Utils.js
index 8c118fa2..3dd287e3 100644
--- a/www/manager6/Utils.js
+++ b/www/manager6/Utils.js
@@ -1963,6 +1963,13 @@ Ext.define('PVE.Utils', {
     },
 
     tagCharRegex: /^[a-z0-9+_.-]+$/i,
+
+    verificationStateOrder: {
+	'failed': 0,
+	'none': 1,
+	'ok': 2,
+	'__default__': 3,
+    },
 },
 
     singleton: true,
diff --git a/www/manager6/storage/BackupView.js b/www/manager6/storage/BackupView.js
index 2328c0fc..ef3a0166 100644
--- a/www/manager6/storage/BackupView.js
+++ b/www/manager6/storage/BackupView.js
@@ -197,11 +197,23 @@ Ext.define('PVE.storage.BackupView', {
 		    header: gettext('Encrypted'),
 		    dataIndex: 'encrypted',
 		    renderer: PVE.Utils.render_backup_encryption,
+		    sorter: {
+			property: 'encrypted',
+			transform: (value) => value ? 1 : 0,
+		    },
 		},
 		verification: {
 		    header: gettext('Verify State'),
 		    dataIndex: 'verification',
 		    renderer: PVE.Utils.render_backup_verification,
+		    sorter: {
+			property: 'verification',
+			transform: (value) => {
+			    let state = value?.state ?? 'none';
+			    let order = PVE.Utils.verificationStateOrder;
+			    return order[state] ?? order.__default__;
+			},
+		    },
 		},
 	    };
 	}
-- 
2.30.2





More information about the pve-devel mailing list