]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/window/Settings.js
add 'my settings' to top bar
[pve-manager.git] / www / manager6 / window / Settings.js
1 Ext.define('PVE.window.Settings', {
2 extend: 'Ext.window.Window',
3
4 width: '400px',
5 title: gettext('My Settings'),
6 iconCls: 'fa fa-gear',
7 modal: true,
8 bodyPadding: 10,
9 resizable: false,
10
11 buttons: [{
12 text: gettext('Close'),
13 handler: function() {
14 this.up('window').close();
15 }
16 }],
17
18 layout: {
19 type: 'vbox',
20 align: 'center'
21 },
22
23 controller: {
24 xclass: 'Ext.app.ViewController',
25
26 control: {
27 '#': {
28 show: function() {
29 var me = this;
30 var sp = Ext.state.Manager.getProvider();
31
32 var username = sp.get('login-username') || PVE.Utils.noneText;
33 me.lookupReference('savedUserName').setValue(username);
34 }
35 },
36 'button[name=reset]': {
37 click: function () {
38 var blacklist = ['GuiCap', 'login-username'];
39 var sp = Ext.state.Manager.getProvider();
40 var state;
41 for (state in sp.state) {
42 if (sp.state.hasOwnProperty(state)) {
43 if (blacklist.indexOf(state) !== -1) {
44 continue;
45 }
46
47 sp.clear(state);
48 }
49 }
50
51 window.location.reload();
52 }
53 },
54 'button[name=clear-username]': {
55 click: function () {
56 var me = this;
57 var usernamefield = me.lookupReference('savedUserName');
58 var sp = Ext.state.Manager.getProvider();
59
60 usernamefield.setValue(PVE.Utils.noneText);
61 sp.clear('login-username');
62 }
63 }
64 }
65 },
66
67 items: [{
68 xtype: 'fieldset',
69 width: '90%',
70 title: gettext('Browser Settings'),
71 layout: {
72 type: 'vbox',
73 align: 'right'
74 },
75 defaults: {
76 width: '100%',
77 margin: '0 0 10 0'
78 },
79 items: [
80 {
81 xtype: 'displayfield',
82 fieldLabel: gettext('Saved User name'),
83 labelAlign: 'left',
84 labelWidth: '50%',
85 fieldStyle: {
86 'text-align':'right'
87 },
88 stateId: 'login-username',
89 reference: 'savedUserName',
90 value: ''
91 },
92 {
93 xtype: 'button',
94 text: gettext('Clear User name'),
95 width: 'auto',
96 name: 'clear-username'
97 },
98 {
99 xtype: 'box',
100 autoEl: { tag: 'hr'}
101 },
102 {
103 xtype: 'displayfield',
104 fieldLabel: gettext('Layout'),
105 labelAlign: 'left',
106 labelWidth: '50%'
107 },
108 {
109 xtype: 'button',
110 text: gettext('Reset Layout'),
111 width: 'auto',
112 name: 'reset'
113 }
114 ]
115 }],
116
117 onShow: function() {
118 var me = this;
119 me.callParent();
120
121 }
122 });