]>
git.proxmox.com Git - pmg-gui.git/blob - js/PBSConfig.js
1 Ext
.define('PMG.PBSScheduleEdit', {
2 extend
: 'Proxmox.window.Edit',
3 xtype
: 'pmgPBSScheduleEdit',
4 onlineHelp
: 'pmgbackup_pbs_schedule',
8 submitText
: gettext('Set'),
11 title
: gettext('Configure Scheduled Backup'),
15 xtype
: 'proxmoxKVComboBox',
17 fieldLabel
: gettext('Schedule'),
22 ['monthly', 'monthly'],
26 emptyText
: gettext('daily'),
29 xtype
: 'proxmoxKVComboBox',
31 fieldLabel
: gettext('Random Delay'),
33 ['0s', gettext('No Delay')],
34 ['15 minutes', '15 Minutes'],
35 ['6 hours', '6 hours'],
39 emptyText
: gettext('5 Minutes'),
42 initComponent: function() {
45 me
.url
= `/nodes/${Proxmox.NodeName}/pbs/${me.remote}/timer`;
50 Ext
.define('pmg-pbs-config', {
51 extend
: 'Ext.data.Model',
52 fields
: ['remote', 'server', 'datastore', 'username', 'disabled'],
55 url
: '/api2/json/config/pbs',
60 Ext
.define('PMG.PBSConfigGrid', {
61 extend
: 'Ext.grid.GridPanel',
62 xtype
: 'pmgPBSConfigGrid',
65 xclass
: 'Ext.app.ViewController',
67 run_editor: function() {
69 let view
= me
.getView();
70 let rec
= view
.getSelection()[0];
75 let win
= Ext
.createWidget('pmgPBSEdit', {
76 remoteId
: rec
.data
.remote
,
80 win
.on('destroy', me
.reload
, me
);
83 newRemote: function() {
85 let win
= Ext
.createWidget('pmgPBSEdit', {});
86 win
.on('destroy', me
.reload
, me
);
92 let view
= me
.getView();
93 view
.getStore().load();
96 init: function(view
) {
98 Proxmox
.Utils
.monStoreErrors(view
, view
.getStore(), true);
103 model
: 'pmg-pbs-config',
112 text
: gettext('Add Remote'),
113 handler
: 'newRemote',
117 xtype
: 'proxmoxButton',
118 text
: gettext('Edit'),
120 handler
: 'run_editor',
123 xtype
: 'proxmoxStdRemoveButton',
124 baseurl
: '/config/pbs',
129 text
: gettext('Reload'),
130 iconCls
: 'fa fa-refresh',
136 itemdblclick
: 'run_editor',
142 header
: gettext('Remote'),
148 header
: gettext('Server'),
154 header
: gettext('Datastore'),
156 dataIndex
: 'datastore',
160 header
: gettext('User ID'),
162 dataIndex
: 'username',
166 header
: gettext('Encryption'),
169 hidden
: true, // for now
170 dataIndex
: 'encryption-key',
171 renderer
: Proxmox
.Utils
.format_boolean
,
174 header
: gettext('Enabled'),
177 dataIndex
: 'disable',
178 renderer
: Proxmox
.Utils
.format_neg_boolean
,