[pbs-devel] [PATCH proxmox-backup 1/2] prune-simulator: allow setting a date on which prune happens
Matthias Heiserer
m.heiserer at proxmox.com
Wed Sep 14 12:50:38 CEST 2022
With this applied, the prune simulator will be more flexible, which might clear
up questions such as these:
https://forum.proxmox.com/threads/pbs-prune-simulator-monthly-backups.115081
In order to have the configuration window not take up too much space,
I added another column and moved the border slightly to the left, so the options
part looks off-centered.
Signed-off-by: Matthias Heiserer <m.heiserer at proxmox.com>
---
.../prune-simulator/prune-simulator_source.js | 92 ++++++++++++-------
1 file changed, 58 insertions(+), 34 deletions(-)
diff --git a/docs/prune-simulator/prune-simulator_source.js b/docs/prune-simulator/prune-simulator_source.js
index 84d3461c..137cf1b3 100644
--- a/docs/prune-simulator/prune-simulator_source.js
+++ b/docs/prune-simulator/prune-simulator_source.js
@@ -330,6 +330,8 @@ Ext.onReady(function() {
let params = view.getValues();
+ NOW.setTime(Date.parse(params.currentDate));
+
let [hourSpec, minuteSpec] = params['schedule-time'].split(':');
if (!hourSpec || !minuteSpec) {
@@ -661,48 +663,70 @@ Ext.onReady(function() {
{ xtype: "panel", width: 1, border: 1 },
{
xtype: 'form',
- layout: 'anchor',
- flex: 1,
+ layout: 'hbox',
+ flex: 1.2,
border: false,
title: 'Simulated Backup Schedule',
defaults: {
- labelWidth: 120,
+ defaults: {
+ labelWidth: 120,
+ },
},
bodyPadding: 10,
items: [
{
- xtype: 'prunesimulatorDayOfWeekSelector',
- name: 'schedule-weekdays',
- fieldLabel: 'Day of week',
- value: ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun'],
- allowBlank: false,
- multiSelect: true,
- padding: '0 0 0 10',
+ xtype: 'container',
+ layout: 'anchor',
+ items: [
+ {
+ xtype: 'prunesimulatorDayOfWeekSelector',
+ name: 'schedule-weekdays',
+ fieldLabel: 'Day of week',
+ value: ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun'],
+ allowBlank: false,
+ multiSelect: true,
+ padding: '0 0 0 10',
+ },
+ {
+ xtype: 'prunesimulatorCalendarEvent',
+ name: 'schedule-time',
+ allowBlank: false,
+ value: '0/6:00',
+ fieldLabel: 'Backup schedule',
+ padding: '0 0 0 10',
+ },
+ {
+ xtype: 'numberfield',
+ name: 'numberOfWeeks',
+ allowBlank: false,
+ fieldLabel: 'Number of weeks',
+ minValue: 1,
+ value: 15,
+ maxValue: 260, // five years
+ padding: '0 0 0 10',
+ },
+ {
+ xtype: 'button',
+ name: 'schedule-button',
+ text: 'Update Schedule',
+ formBind: true,
+ handler: 'reloadFull',
+ },
+ ],
},
{
- xtype: 'prunesimulatorCalendarEvent',
- name: 'schedule-time',
- allowBlank: false,
- value: '0/6:00',
- fieldLabel: 'Backup schedule',
- padding: '0 0 0 10',
- },
- {
- xtype: 'numberfield',
- name: 'numberOfWeeks',
- allowBlank: false,
- fieldLabel: 'Number of weeks',
- minValue: 1,
- value: 15,
- maxValue: 260, // five years
- padding: '0 0 0 10',
- },
- {
- xtype: 'button',
- name: 'schedule-button',
- text: 'Update Schedule',
- formBind: true,
- handler: 'reloadFull',
+ xtype: 'container',
+ layout: 'anchor',
+ items: [
+ {
+ xtype: 'datefield',
+ name: 'currentDate',
+ fieldLabel: 'Today',
+ allowBlank: false,
+ padding: '0 0 0 10',
+ value: new Date(),
+ },
+ ],
},
],
},
@@ -734,7 +758,7 @@ Ext.onReady(function() {
xtype: 'prunesimulatorPruneList',
store: me.pruneStore,
reference: 'pruneList',
- flex: 1,
+ flex: 1.2,
},
],
},
--
2.30.2
More information about the pbs-devel
mailing list