]>
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);
71 xtype
: me
.isCreate
? 'textfield' : 'displayfield',
73 fieldLabel
: gettext('User name'),
75 renderer
: Ext
.String
.htmlEncode
,
77 submitValue
: me
.isCreate
? true : false
81 xtype
: 'pveGroupSelector',
85 fieldLabel
: gettext('Group')
88 xtype
: 'pmxExpireDate',
92 xtype
: 'proxmoxcheckbox',
93 fieldLabel
: gettext('Enabled'),
105 fieldLabel
: gettext('First Name')
110 fieldLabel
: gettext('Last Name')
115 fieldLabel
: gettext('E-Mail'),
122 xtype
: 'pmxRealmComboBox',
124 fieldLabel
: gettext('Realm'),
126 matchFieldWidth
: false,
127 listConfig
: { width
: 300 },
129 change: function(combo
, newValue
){
131 update_passwd_field(realm
);
138 var ipanel
= Ext
.create('Proxmox.panel.InputPanel', {
145 fieldLabel
: gettext('Comment')
152 fieldLabel
: gettext('Key IDs')
155 onGetValues: function(values
) {
157 values
.userid
= values
.userid
+ '@' + realm
;
160 if (!values
.password
) {
161 delete values
.password
;
169 subject
: gettext('User'),
173 labelWidth
: 110 // for spanish translation
182 success: function(response
, options
) {
183 var data
= response
.result
.data
;
186 if ( data
.keys
=== 'x!oath' || data
.keys
=== 'x!u2f' ) {
187 me
.down('[name="keys"]').setDisabled(1);