]>
Commit | Line | Data |
---|---|---|
7029d72a DC |
1 | Ext.define('Proxmox.window.LanguageEditWindow', { |
2 | extend: 'Ext.window.Window', | |
3 | alias: 'widget.pmxLanguageEditWindow', | |
4 | ||
eb230997 TL |
5 | viewModel: { |
6 | parent: null, | |
7 | data: { | |
8 | language: '__default__', | |
9 | }, | |
10 | }, | |
11 | controller: { | |
12 | xclass: 'Ext.app.ViewController', | |
13 | init: function(view) { | |
14 | let language = Ext.util.Cookies.get(view.cookieName) || '__default__'; | |
15 | this.getViewModel().set('language', language); | |
16 | }, | |
17 | applyLanguage: function(button) { | |
18 | let view = this.getView(); | |
19 | let vm = this.getViewModel(); | |
20 | ||
21 | let expire = Ext.Date.add(new Date(), Ext.Date.YEAR, 10); | |
22 | Ext.util.Cookies.set(view.cookieName, vm.get('language'), expire); | |
23 | view.mask(gettext('Please wait...'), 'x-mask-loading'); | |
24 | window.location.reload(); | |
25 | }, | |
26 | }, | |
27 | ||
7029d72a DC |
28 | cookieName: 'PVELangCookie', |
29 | ||
30 | title: gettext('Language'), | |
31 | modal: true, | |
32 | bodyPadding: 10, | |
8b16d98c | 33 | resizable: false, |
7029d72a DC |
34 | items: [ |
35 | { | |
36 | xtype: 'proxmoxLanguageSelector', | |
37 | fieldLabel: gettext('Language'), | |
eb230997 TL |
38 | bind: { |
39 | value: '{language}', | |
40 | }, | |
7029d72a DC |
41 | }, |
42 | ], | |
7029d72a DC |
43 | buttons: [ |
44 | { | |
eb230997 TL |
45 | text: gettext('Apply'), |
46 | handler: 'applyLanguage', | |
7029d72a DC |
47 | }, |
48 | ], | |
7029d72a | 49 | }); |