ui: add encryption info to snapshot list
show which backups/files are encrypted in the snapshot list Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This commit is contained in:
parent
1c090810f5
commit
e005f953d9
@ -11,6 +11,30 @@ Ext.define('pbs-data-store-snapshots', {
|
||||
'files',
|
||||
'owner',
|
||||
{ name: 'size', type: 'int' },
|
||||
{
|
||||
name: 'encrypted',
|
||||
type: 'string',
|
||||
calculate: function(data) {
|
||||
let encrypted = 0;
|
||||
let files = 0;
|
||||
data.files.forEach(file => {
|
||||
if (file.filename === 'index.json.blob') return; // is never encrypted
|
||||
if (file.encrypted) {
|
||||
encrypted++;
|
||||
}
|
||||
files++;
|
||||
});
|
||||
|
||||
if (encrypted === 0) {
|
||||
return Proxmox.Utils.noText;
|
||||
} else if (encrypted < files) {
|
||||
return gettext('Partial');
|
||||
} else if (encrypted === files) {
|
||||
return Proxmox.Utils.yesText;
|
||||
}
|
||||
return Proxmox.Utils.unknowText;
|
||||
}
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
@ -127,7 +151,13 @@ Ext.define('PBS.DataStoreContent', {
|
||||
group.files = item.files;
|
||||
group.size = item.size;
|
||||
group.owner = item.owner;
|
||||
if (group.encrypted !== undefined && group.encrypted !== item.encrypted) {
|
||||
group.encrypted = gettext('Mixed');
|
||||
} else {
|
||||
group.encrypted = item.encrypted;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
group.count = group.children.length;
|
||||
children.push(group);
|
||||
@ -192,13 +222,25 @@ Ext.define('PBS.DataStoreContent', {
|
||||
sortable: true,
|
||||
dataIndex: 'owner',
|
||||
},
|
||||
{
|
||||
header: gettext('Encrypted'),
|
||||
dataIndex: 'encrypted',
|
||||
},
|
||||
{
|
||||
header: gettext("Files"),
|
||||
sortable: false,
|
||||
dataIndex: 'files',
|
||||
renderer: function(files) {
|
||||
return files.map((file) => {
|
||||
return file.filename;
|
||||
let icon = '';
|
||||
let size = '';
|
||||
if (file.encrypted) {
|
||||
icon = '<i class="fa fa-lock"></i> ';
|
||||
}
|
||||
if (file.size) {
|
||||
size = ` (${Proxmox.Utils.format_size(file.size)})`;
|
||||
}
|
||||
return `${icon}${file.filename}${size}`;
|
||||
}).join(', ');
|
||||
},
|
||||
flex: 2
|
||||
|
Loading…
Reference in New Issue
Block a user