]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/dc/UserEdit.js
1 Ext
.define('PVE.dc.UserEdit', {
2 extend
: 'Proxmox.window.Edit',
3 alias
: ['widget.pveDcUserEdit'],
7 initComponent: function() {
10 me
.isCreate
= !me
.userid
;
17 url
= '/api2/extjs/access/users';
20 url
= '/api2/extjs/access/users/' + encodeURIComponent(me
.userid
);
27 var validate_pw = function() {
28 if (verifypw
.getValue() !== pwfield
.getValue()) {
29 return gettext("Passwords do not match");
34 verifypw
= Ext
.createWidget('textfield', {
35 inputType
: 'password',
36 fieldLabel
: gettext('Confirm password'),
37 name
: 'verifypassword',
41 validator
: validate_pw
,
44 pwfield
= Ext
.createWidget('textfield', {
45 inputType
: 'password',
46 fieldLabel
: gettext('Password'),
51 validator
: validate_pw
,
54 var update_passwd_field = function(realm
) {
55 if (realm
=== 'pve') {
56 pwfield
.setVisible(true);
57 pwfield
.setDisabled(false);
58 verifypw
.setVisible(true);
59 verifypw
.setDisabled(false);
61 pwfield
.setVisible(false);
62 pwfield
.setDisabled(true);
63 verifypw
.setVisible(false);
64 verifypw
.setDisabled(true);
70 xtype
: me
.isCreate
? 'textfield' : 'displayfield',
72 fieldLabel
: gettext('User name'),
74 renderer
: Ext
.String
.htmlEncode
,
76 submitValue
: me
.isCreate
? true : false,
80 xtype
: 'pveGroupSelector',
84 fieldLabel
: gettext('Group'),
87 xtype
: 'pmxExpireDate',
91 xtype
: 'proxmoxcheckbox',
92 fieldLabel
: gettext('Enabled'),
104 fieldLabel
: gettext('First Name'),
109 fieldLabel
: gettext('Last Name'),
114 fieldLabel
: gettext('E-Mail'),
115 vtype
: 'proxmoxMail',
120 column1
.splice(1, 0, {
121 xtype
: 'pmxRealmComboBox',
123 fieldLabel
: gettext('Realm'),
125 matchFieldWidth
: false,
126 listConfig
: { width
: 300 },
128 change: function(combo
, newValue
) {
130 update_passwd_field(realm
);
137 var ipanel
= Ext
.create('Proxmox.panel.InputPanel', {
144 fieldLabel
: gettext('Comment'),
151 fieldLabel
: gettext('Key IDs'),
154 onGetValues: function(values
) {
156 values
.userid
= values
.userid
+ '@' + realm
;
159 if (!values
.password
) {
160 delete values
.password
;
168 subject
: gettext('User'),
172 labelWidth
: 110, // for spanish translation
181 success: function(response
, options
) {
182 var data
= response
.result
.data
;
185 if (data
.keys
=== 'x!oath' || data
.keys
=== 'x!u2f') {
186 me
.down('[name="keys"]').setDisabled(1);