[pbs-devel] [PATCH proxmox-backup v2] fix #5422: ui: garbage-collection: make columns sortable
Max Carrara
m.carrara at proxmox.com
Tue May 21 11:25:50 CEST 2024
On Thu May 16, 2024 at 11:18 AM CEST, Gabriel Goller wrote:
> Make columns sortable in the global 'Prune & GC Jobs' view. In the
> per-datastore view the columns will not be sortable as there can only be
> one job.
>
> Fixes: db3fd213 ("fix #3217: ui: global prune and gc job view")
>
> Co-authored-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
> Signed-off-by: Gabriel Goller <g.goller at proxmox.com>
Tested this again; didn't think that the columns would also be sortable
in the per-datastore view. Good catch @Thomas!
Now does what it says on the box. LGTM.
Tested-by: Max Carrara <m.carrara at proxmox.com>
> ---
> www/config/GCView.js | 14 +++-----------
> 1 file changed, 3 insertions(+), 11 deletions(-)
>
> diff --git a/www/config/GCView.js b/www/config/GCView.js
> index bcea72a5..7733c265 100644
> --- a/www/config/GCView.js
> +++ b/www/config/GCView.js
> @@ -155,7 +155,6 @@ Ext.define('PBS.config.GCJobView', {
> header: gettext('Datastore'),
> dataIndex: 'store',
> renderer: Ext.String.htmlEncode,
> - sortable: true,
> hideable: false,
> minWidth: 120,
> maxWidth: 300,
> @@ -164,7 +163,6 @@ Ext.define('PBS.config.GCJobView', {
> {
> header: gettext('Schedule'),
> dataIndex: 'schedule',
> - sortable: false,
> hideable: false,
> renderer: (value) => value ? value : Proxmox.Utils.NoneText,
> minWidth: 85,
> @@ -174,7 +172,6 @@ Ext.define('PBS.config.GCJobView', {
> header: gettext('Last GC'),
> dataIndex: 'last-run-endtime',
> renderer: PBS.Utils.render_optional_timestamp,
> - sortable: true,
> minWidth: 150,
> flex: 1,
> },
> @@ -182,7 +179,6 @@ Ext.define('PBS.config.GCJobView', {
> text: gettext('Duration'),
> dataIndex: 'duration',
> renderer: Proxmox.Utils.render_duration,
> - sortable: false,
> minWidth: 80,
> flex: 1,
> },
> @@ -190,7 +186,6 @@ Ext.define('PBS.config.GCJobView', {
> header: gettext('Last Status'),
> dataIndex: 'last-run-state',
> renderer: PBS.Utils.render_task_status,
> - sortable: true,
> minWidth: 80,
> flex: 1,
> },
> @@ -198,7 +193,6 @@ Ext.define('PBS.config.GCJobView', {
> header: gettext('Next Run'),
> dataIndex: 'next-run',
> renderer: PBS.Utils.render_next_task_run,
> - sortable: true,
> minWidth: 150,
> flex: 1,
> },
> @@ -207,7 +201,6 @@ Ext.define('PBS.config.GCJobView', {
> dataIndex: 'removed-bytes',
> renderer: (value, meta, record) => record.data.upid !== null
> ? Proxmox.Utils.format_size(value, true) : "-",
> - sortable: false,
> minWidth: 85,
> flex: 1,
> },
> @@ -216,7 +209,6 @@ Ext.define('PBS.config.GCJobView', {
> dataIndex: 'pending-bytes',
> renderer: (value, meta, record) => record.data.upid !== null
> ? Proxmox.Utils.format_size(value, true) : "-",
> - sortable: false,
> minWidth: 80,
> flex: 3,
> },
> @@ -224,12 +216,12 @@ Ext.define('PBS.config.GCJobView', {
>
> initComponent: function() {
> let me = this;
> - let hideLocalDatastore = !!me.datastore;
> + let isSingleDatastore = !!me.datastore;
>
> for (let column of me.columns) {
> + column.sortable = !isSingleDatastore;
> if (column.dataIndex === 'store') {
> - column.hidden = hideLocalDatastore;
> - break;
> + column.hidden = isSingleDatastore;
> }
> }
>
More information about the pbs-devel
mailing list