]>
Commit | Line | Data |
---|---|---|
3a2a6964 DC |
1 | Ext.define('PVE.window.TreeSettingsEdit', { |
2 | extend: 'Proxmox.window.Edit', | |
3 | alias: 'widget.pveTreeSettingsEdit', | |
4 | ||
5 | title: gettext('Tree Settings'), | |
3a2a6964 DC |
6 | isCreate: false, |
7 | ||
04899471 | 8 | url: '#', // ignored as submit() gets overriden here, but the parent class requires it |
3a2a6964 | 9 | |
dc4056cf | 10 | width: 450, |
3a2a6964 | 11 | fieldDefaults: { |
dc4056cf | 12 | labelWidth: 150, |
3a2a6964 DC |
13 | }, |
14 | ||
15 | items: [ | |
16 | { | |
17 | xtype: 'inputpanel', | |
18 | items: [ | |
19 | { | |
20 | xtype: 'proxmoxKVComboBox', | |
21 | name: 'sort-field', | |
dc4056cf | 22 | fieldLabel: gettext('Sort Key'), |
3a2a6964 DC |
23 | comboItems: [ |
24 | ['__default__', `${Proxmox.Utils.defaultText} (VMID)`], | |
25 | ['vmid', 'VMID'], | |
26 | ['name', gettext('Name')], | |
27 | ], | |
28 | defaultValue: '__default__', | |
29 | value: '__default__', | |
30 | deleteEmpty: false, | |
31 | }, | |
32 | { | |
33 | xtype: 'proxmoxKVComboBox', | |
34 | name: 'group-templates', | |
35 | fieldLabel: gettext('Group Templates'), | |
36 | comboItems: [ | |
37 | ['__default__', `${Proxmox.Utils.defaultText} (${gettext("Yes")})`], | |
38 | [1, gettext('Yes')], | |
39 | [0, gettext('No')], | |
40 | ], | |
41 | defaultValue: '__default__', | |
42 | value: '__default__', | |
43 | deleteEmpty: false, | |
44 | }, | |
45 | { | |
46 | xtype: 'proxmoxKVComboBox', | |
47 | name: 'group-guest-types', | |
dc4056cf | 48 | fieldLabel: gettext('Group Guest Types'), |
3a2a6964 DC |
49 | comboItems: [ |
50 | ['__default__', `${Proxmox.Utils.defaultText} (${gettext("Yes")})`], | |
51 | [1, gettext('Yes')], | |
52 | [0, gettext('No')], | |
53 | ], | |
54 | defaultValue: '__default__', | |
55 | value: '__default__', | |
56 | deleteEmpty: false, | |
57 | }, | |
58 | { | |
59 | xtype: 'displayfield', | |
60 | userCls: 'pmx-hint', | |
61 | value: gettext('Settings are saved in the local storage of the browser'), | |
62 | }, | |
63 | ], | |
64 | }, | |
65 | ], | |
66 | ||
67 | submit: function() { | |
68 | let me = this; | |
69 | ||
70 | let localStorage = Ext.state.Manager.getProvider(); | |
71 | localStorage.set('pve-tree-sorting', me.down('inputpanel').getValues() || null); | |
72 | ||
73 | me.apiCallDone(); | |
74 | me.close(); | |
75 | }, | |
76 | ||
77 | initComponent: function() { | |
78 | let me = this; | |
79 | ||
80 | me.callParent(); | |
81 | ||
82 | let localStorage = Ext.state.Manager.getProvider(); | |
83 | me.down('inputpanel').setValues(localStorage.get('pve-tree-sorting')); | |
84 | }, | |
85 | ||
86 | }); |