]>
git.proxmox.com Git - pmg-gui.git/blob - js/UserEdit.js
c7d5a314022e785d55f44d9e50d73c6fefbe4e7e
1 Ext
.define('PMG.UserEdit', {
2 extend
: 'Proxmox.window.Edit',
3 alias
: 'widget.pmgUserEdit',
4 mixins
: ['Proxmox.Mixin.CBind'],
10 subject
: gettext('User'),
12 fieldDefaults
: { labelWidth
: 120 },
14 cbindData: function(initialConfig
) {
17 var userid
= initialConfig
.userid
;
18 var baseurl
= '/api2/extjs/access/users';
21 me
.url
= userid
? baseurl
+ '/' + userid
: baseurl
;
22 me
.method
= userid
? 'PUT' : 'POST';
23 me
.autoLoad
= userid
? true : false;
26 useridXType
: userid
? 'displayfield' : 'textfield',
27 isSuperUser
: userid
=== 'root@pam',
37 fieldLabel
: gettext('User name'),
40 submitValue
: '{create}',
41 xtype
: '{useridXType}',
46 inputType
: 'password',
47 fieldLabel
: gettext('Password'),
52 change: function(field
){
53 field
.next().validate();
55 blur: function(field
){
56 field
.next().validate();
66 inputType
: 'password',
67 fieldLabel
: gettext('Confirm password'),
68 name
: 'verifypassword',
70 initialPassField
: 'password',
79 xtype
: 'pmgRoleSelector',
82 fieldLabel
: gettext('Role'),
84 disabled
: '{isSuperUser}'
90 emptyText
: Proxmox
.Utils
.neverText
,
93 fieldLabel
: gettext('Expire'),
95 disabled
: '{isSuperUser}'
99 xtype
: 'proxmoxcheckbox',
100 fieldLabel
: gettext('Enabled'),
106 disabled
: '{isSuperUser}'
113 xtype
: 'proxmoxtextfield',
115 fieldLabel
: gettext('First Name'),
117 deleteEmpty
: '{!create}'
121 xtype
: 'proxmoxtextfield',
123 fieldLabel
: gettext('Last Name'),
125 deleteEmpty
: '{!create}'
129 xtype
: 'proxmoxtextfield',
131 fieldLabel
: gettext('E-Mail'),
132 vtype
: 'proxmoxMail',
134 deleteEmpty
: '{!create}'
141 xtype
: 'proxmoxtextfield',
143 fieldLabel
: gettext('Comment'),
145 disabled
: '{isSuperUser}',
146 deleteEmpty
: '{!create}'
150 xtype
: 'proxmoxtextfield',
152 fieldLabel
: gettext('Key IDs'),
154 deleteEmpty
: '{!create}'
160 getValues: function(dirtyOnly
) {
163 var values
= me
.callParent(arguments
);
165 // hack: ExtJS datefield does not submit 0, so we need to set that
166 if (!values
.expire
) {
171 values
.userid
= values
.username
+ '@pmg';
174 delete values
.username
;
176 if (!values
.password
) {
177 delete values
.password
;
183 setValues: function(values
) {
186 if (Ext
.isDefined(values
.expire
)) {
188 values
.expire
= new Date(values
.expire
* 1000);
190 // display 'never' instead of '1970-01-01'
191 values
.expire
= null;
195 me
.callParent([values
]);