Ext.define('PMG.PBSScheduleEdit', {
extend: 'Proxmox.window.Edit',
xtype: 'pmgPBSScheduleEdit',
+ onlineHelp: 'pmgbackup_pbs_schedule',
isAdd: true,
+ isCreate: true,
+ submitText: gettext('Set'),
+
method: 'POST',
- subject: gettext('Scheduled Backup'),
+ title: gettext('Configure Scheduled Backup'),
autoLoad: true,
items: [
{
name: 'schedule',
fieldLabel: gettext('Schedule'),
comboItems: [
- ['daily', 'daily'],
['hourly', 'hourly'],
+ ['daily', 'daily'],
['weekly', 'weekly'],
['monthly', 'monthly'],
],
editable: true,
- emptyText: 'Systemd Calender Event',
+ deleteEmpty: false,
+ emptyText: gettext('daily'),
},
{
xtype: 'proxmoxKVComboBox',
name: 'delay',
fieldLabel: gettext('Random Delay'),
comboItems: [
- ['0s', 'no delay'],
+ ['0s', gettext('No Delay')],
['15 minutes', '15 Minutes'],
['6 hours', '6 hours'],
],
editable: true,
- emptyText: 'Systemd TimeSpan',
+ deleteEmpty: false,
+ emptyText: gettext('5 Minutes'),
},
],
initComponent: function() {
let win = Ext.createWidget('pmgPBSEdit', {
remoteId: rec.data.remote,
+ autoLoad: true,
+ autoShow: true,
});
win.on('destroy', me.reload, me);
- win.load();
- win.show();
},
newRemote: function() {
let me = this;
let view = me.getView();
view.getStore().load();
- view.fireEvent('load', view);
- },
-
- createSchedule: function() {
- let me = this;
- let view = me.getView();
- let rec = view.getSelection()[0];
- let remotename = rec.data.remote;
- let win = Ext.createWidget('pmgPBSScheduleEdit', {
- remote: remotename,
- });
- win.on('destroy', me.reload, me);
- win.show();
},
init: function(view) {
let me = this;
Proxmox.Utils.monStoreErrors(view, view.getStore(), true);
},
-
},
store: {
model: 'pmg-pbs-config',
sorters: [{
property: 'remote',
- order: 'DESC',
+ direction: 'ASC',
}],
},
baseurl: '/config/pbs',
callback: 'reload',
},
- '-',
- {
- xtype: 'proxmoxButton',
- text: gettext('Set Schedule'),
- enableFn: function(rec) {
- return !rec.data.disable;
- },
- disabled: true,
- handler: 'createSchedule',
- },
+ '->',
{
- xtype: 'proxmoxStdRemoveButton',
- baseurl: '/nodes/' + Proxmox.NodeName + '/pbs/',
- callback: 'reload',
- text: gettext('Remove Schedule'),
- confirmMsg: function(rec) {
- let me = this;
- let remote = rec.getId();
- return Ext.String.format(gettext('Are you sure you want to remove the schedule for {0}'), `'${remote}'`);
- },
- getUrl: function(rec) {
- let me = this;
- return me.baseurl + '/' + rec.getId() + '/timer';
- },
+ text: gettext('Reload'),
+ iconCls: 'fa fa-refresh',
+ handler: 'reload',
},
],