]> git.proxmox.com Git - pve-manager.git/commitdiff
ui: guest selector: make the shown picker columns customizable
authorDominik Csapak <d.csapak@proxmox.com>
Mon, 6 Mar 2023 14:23:29 +0000 (15:23 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Sat, 11 Mar 2023 17:47:34 +0000 (18:47 +0100)
We will reuse this component in other place, which might not always
want to show all columns

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
www/manager6/form/VMSelector.js

index 78cd90134e60002cca45fca9a4e031c4af61e7ab..d80a21ec089ddf847b113e71d81c7dc290ef6348 100644 (file)
@@ -22,7 +22,8 @@ Ext.define('PVE.form.VMSelector', {
            value: /lxc|qemu/,
        }],
     },
-    columns: [
+
+    columnsDeclaration: [
        {
            header: 'ID',
            dataIndex: 'vmid',
@@ -94,6 +95,9 @@ Ext.define('PVE.form.VMSelector', {
        },
     ],
 
+    // should be a list of 'dataIndex' values, if 'undefined' all declared columns will be included
+    columnSelection: undefined,
+
     selModel: {
        selType: 'checkboxmodel',
        mode: 'SIMPLE',
@@ -155,6 +159,12 @@ Ext.define('PVE.form.VMSelector', {
     initComponent: function() {
        let me = this;
 
+       let columns = me.columnsDeclaration.filter((column) =>
+           me.columnSelection ? me.columnSelection.indexOf(column.dataIndex) !== -1 : true,
+       ).map((x) => x);
+
+       me.columns = columns;
+
        me.callParent();
 
        if (me.nodename) {