ui: datastore/Content: add forget button for groups
since we can remove whole groups via api now Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This commit is contained in:
parent
f32791b4b2
commit
b32cf6a1e0
|
@ -382,10 +382,30 @@ Ext.define('PBS.DataStoreContent', {
|
||||||
let data = rec.data;
|
let data = rec.data;
|
||||||
if (!view.datastore) return;
|
if (!view.datastore) return;
|
||||||
|
|
||||||
|
let params;
|
||||||
|
let message;
|
||||||
|
let url;
|
||||||
|
if (rec.parentNode.id !== 'root') {
|
||||||
|
message = Ext.String.format(gettext('Are you sure you want to remove snapshot {0}'), `'${data.text}'`);
|
||||||
|
url = `/admin/datastore/${view.datastore}/snapshots`;
|
||||||
|
params = {
|
||||||
|
"backup-type": data["backup-type"],
|
||||||
|
"backup-id": data["backup-id"],
|
||||||
|
"backup-time": (data['backup-time'].getTime()/1000).toFixed(0),
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
message = Ext.String.format(gettext('Are you sure you want to remove group {0}'), `'${data.text}'`);
|
||||||
|
url = `/admin/datastore/${view.datastore}/groups`;
|
||||||
|
params = {
|
||||||
|
"backup-type": data.backup_type,
|
||||||
|
"backup-id": data.backup_id,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
Ext.Msg.show({
|
Ext.Msg.show({
|
||||||
title: gettext('Confirm'),
|
title: gettext('Confirm'),
|
||||||
icon: Ext.Msg.WARNING,
|
icon: Ext.Msg.WARNING,
|
||||||
message: Ext.String.format(gettext('Are you sure you want to remove snapshot {0}'), `'${data.text}'`),
|
message,
|
||||||
buttons: Ext.Msg.YESNO,
|
buttons: Ext.Msg.YESNO,
|
||||||
defaultFocus: 'no',
|
defaultFocus: 'no',
|
||||||
callback: function(btn) {
|
callback: function(btn) {
|
||||||
|
@ -394,12 +414,8 @@ Ext.define('PBS.DataStoreContent', {
|
||||||
}
|
}
|
||||||
|
|
||||||
Proxmox.Utils.API2Request({
|
Proxmox.Utils.API2Request({
|
||||||
params: {
|
url,
|
||||||
"backup-type": data["backup-type"],
|
params,
|
||||||
"backup-id": data["backup-id"],
|
|
||||||
"backup-time": (data['backup-time'].getTime()/1000).toFixed(0),
|
|
||||||
},
|
|
||||||
url: `/admin/datastore/${view.datastore}/snapshots`,
|
|
||||||
method: 'DELETE',
|
method: 'DELETE',
|
||||||
waitMsgTarget: view,
|
waitMsgTarget: view,
|
||||||
failure: function(response, opts) {
|
failure: function(response, opts) {
|
||||||
|
@ -617,8 +633,8 @@ Ext.define('PBS.DataStoreContent', {
|
||||||
{
|
{
|
||||||
handler: 'onForget',
|
handler: 'onForget',
|
||||||
getTip: (v, m, rec) => Ext.String.format(gettext("Permanently forget snapshot '{0}'"), v),
|
getTip: (v, m, rec) => Ext.String.format(gettext("Permanently forget snapshot '{0}'"), v),
|
||||||
getClass: (v, m, rec) => !rec.data.leaf && rec.parentNode.id !== 'root' ? 'fa critical fa-trash-o' : 'pmx-hidden',
|
getClass: (v, m, rec) => !rec.data.leaf ? 'fa critical fa-trash-o' : 'pmx-hidden',
|
||||||
isDisabled: (v, r, c, i, rec) => rec.data.leaf || rec.parentNode.id === 'root',
|
isDisabled: (v, r, c, i, rec) => !!rec.data.leaf,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
handler: 'downloadFile',
|
handler: 'downloadFile',
|
||||||
|
|
Loading…
Reference in New Issue