fix #4001: FileBrowser: show number of items in a directory as size

Signed-off-by: Stefan Sterz <s.sterz@proxmox.com>
This commit is contained in:
Stefan Sterz 2022-05-05 15:52:49 +02:00 committed by Thomas Lamprecht
parent a3faf027a1
commit f5be46bc99

View File

@ -2,6 +2,19 @@ Ext.define('proxmox-file-tree', {
extend: 'Ext.data.Model',
fields: ['filepath', 'text', 'type', 'size',
{
name: 'sizedisplay',
calculate: data => {
if (data.size === undefined) {
return '';
} else if (data.type === 'd') {
let fs = data.size === 1 ? gettext('{0} item') : gettext('{0} items');
return Ext.String.format(fs, data.size);
}
return Proxmox.Utils.format_size(data.size);
},
},
{
name: 'mtime',
type: 'date',
@ -270,10 +283,15 @@ Ext.define("Proxmox.window.FileBrowser", {
},
{
text: gettext('Size'),
dataIndex: 'size',
renderer: value => value === undefined ? '' : Proxmox.Utils.format_size(value),
dataIndex: 'sizedisplay',
sorter: {
sorterFn: function(a, b) {
if (a.data.type === 'd' && b.data.type !== 'd') {
return -1;
} else if (a.data.type !== 'd' && b.data.type === 'd') {
return 1;
}
let asize = a.data.size || 0;
let bsize = b.data.size || 0;