]>
Commit | Line | Data |
---|---|---|
1 | Ext.define('PVE.panel.StartupInputPanel', { | |
2 | extend: 'Proxmox.panel.InputPanel', | |
3 | onlineHelp: 'qm_startup_and_shutdown', | |
4 | ||
5 | onGetValues: function(values) { | |
6 | var me = this; | |
7 | ||
8 | var res = PVE.Parser.printStartup(values); | |
9 | ||
10 | if (res === undefined || res === '') { | |
11 | return { 'delete': 'startup' }; | |
12 | } | |
13 | ||
14 | return { startup: res }; | |
15 | }, | |
16 | ||
17 | setStartup: function(value) { | |
18 | var me = this; | |
19 | ||
20 | var startup = PVE.Parser.parseStartup(value); | |
21 | if (startup) { | |
22 | me.setValues(startup); | |
23 | } | |
24 | }, | |
25 | ||
26 | initComponent: function() { | |
27 | var me = this; | |
28 | ||
29 | me.items = [ | |
30 | { | |
31 | xtype: 'textfield', | |
32 | name: 'order', | |
33 | defaultValue: '', | |
34 | emptyText: 'any', | |
35 | fieldLabel: gettext('Start/Shutdown order'), | |
36 | }, | |
37 | { | |
38 | xtype: 'textfield', | |
39 | name: 'up', | |
40 | defaultValue: '', | |
41 | emptyText: 'default', | |
42 | fieldLabel: gettext('Startup delay'), | |
43 | }, | |
44 | { | |
45 | xtype: 'textfield', | |
46 | name: 'down', | |
47 | defaultValue: '', | |
48 | emptyText: 'default', | |
49 | fieldLabel: gettext('Shutdown timeout'), | |
50 | }, | |
51 | ]; | |
52 | ||
53 | me.callParent(); | |
54 | }, | |
55 | }); | |
56 | ||
57 | Ext.define('PVE.window.StartupEdit', { | |
58 | extend: 'Proxmox.window.Edit', | |
59 | alias: 'widget.pveWindowStartupEdit', | |
60 | onlineHelp: undefined, | |
61 | ||
62 | initComponent: function() { | |
63 | let me = this; | |
64 | ||
65 | let ipanelConfig = me.onlineHelp ? { onlineHelp: me.onlineHelp } : {}; | |
66 | let ipanel = Ext.create('PVE.panel.StartupInputPanel', ipanelConfig); | |
67 | ||
68 | Ext.applyIf(me, { | |
69 | subject: gettext('Start/Shutdown order'), | |
70 | fieldDefaults: { | |
71 | labelWidth: 120, | |
72 | }, | |
73 | items: [ipanel], | |
74 | }); | |
75 | ||
76 | me.callParent(); | |
77 | ||
78 | me.load({ | |
79 | success: function(response, options) { | |
80 | me.vmconfig = response.result.data; | |
81 | ipanel.setStartup(me.vmconfig.startup); | |
82 | }, | |
83 | }); | |
84 | }, | |
85 | }); |