]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/window/ScheduleSimulator.js
f124b0e9bca400afbc8729766592eee940211ce1
1 Ext
.define('PVE.window.ScheduleSimulator', {
2 extend
: 'Ext.window.Window',
4 title
: gettext('Job Schedule Simulator'),
7 xclass
: 'Ext.app.ViewController',
9 this.getView().close();
11 simulate: function() {
13 let schedule
= me
.lookup('schedule').getValue();
17 let iterations
= me
.lookup('iterations').getValue() || 10;
18 Proxmox
.Utils
.API2Request({
19 url
: '/cluster/jobs/schedule-analyze',
25 failure
: response
=> Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
),
26 success: function(response
) {
27 let schedules
= response
.result
.data
;
28 me
.lookup('grid').getStore().setData(schedules
);
33 scheduleChanged: function(field
, value
) {
34 this.lookup('simulateBtn').setDisabled(!value
);
37 renderDate: function(value
) {
38 let date
= new Date(value
*1000);
39 return date
.toLocaleDateString();
42 renderTime: function(value
) {
43 let date
= new Date(value
*1000);
44 return date
.toLocaleTimeString();
47 init: function(view
) {
50 me
.lookup('schedule').setValue(view
.schedule
);
67 xtype
: 'pveCalendarEvent',
68 reference
: 'schedule',
69 fieldLabel
: gettext('Schedule'),
71 change
: 'scheduleChanged',
75 xtype
: 'proxmoxintegerfield',
76 reference
: 'iterations',
77 fieldLabel
: gettext('Iterations'),
92 reference
: 'simulateBtn',
93 text
: gettext('Simulate'),
105 emptyText
: Proxmox
.Utils
.NoneText
,
110 text
: gettext('Date'),
111 renderer
: 'renderDate',
112 dataIndex
: 'timestamp',
116 text
: gettext('Time'),
117 renderer
: 'renderTime',
118 dataIndex
: 'timestamp',
124 fields
: ['timestamp'],
135 text
: gettext('Done'),