]> git.proxmox.com Git - pmg-gui.git/blobdiff - js/UserEdit.js
object editors: rework so that default label width fits everywhere
[pmg-gui.git] / js / UserEdit.js
index c7d5a314022e785d55f44d9e50d73c6fefbe4e7e..e2125305fa92b382fee6beb757938b2327837c69 100644 (file)
@@ -2,6 +2,7 @@ Ext.define('PMG.UserEdit', {
     extend: 'Proxmox.window.Edit',
     alias: 'widget.pmgUserEdit',
     mixins: ['Proxmox.Mixin.CBind'],
+    onlineHelp: 'pmgconfig_localuser',
 
     userid: undefined,
 
@@ -17,15 +18,15 @@ Ext.define('PMG.UserEdit', {
        var userid = initialConfig.userid;
        var baseurl = '/api2/extjs/access/users';
 
-       me.create = !userid;
-       me.url = userid ?  baseurl + '/' + userid : baseurl;
+       me.isCreate = !userid;
+       me.url = userid ? baseurl + '/' + userid : baseurl;
        me.method = userid ? 'PUT' : 'POST';
-       me.autoLoad = userid ? true : false;
+       me.autoLoad = !!userid;
 
        return {
            useridXType: userid ? 'displayfield' : 'textfield',
            isSuperUser: userid === 'root@pam',
-       }
+       };
     },
 
     items: {
@@ -35,11 +36,13 @@ Ext.define('PMG.UserEdit', {
                xtype: 'textfield',
                name: 'username',
                fieldLabel: gettext('User name'),
+               renderer: Ext.htmlEncode,
                allowBlank: false,
+               minLength: 4,
                cbind: {
-                   submitValue: '{create}',
+                   submitValue: '{isCreate}',
                    xtype: '{useridXType}',
-               }
+               },
            },
            {
                xtype: 'textfield',
@@ -49,20 +52,20 @@ Ext.define('PMG.UserEdit', {
                allowBlank: false,
                name: 'password',
                listeners: {
-                    change: function(field){
+                    change: function(field) {
                        field.next().validate();
                     },
-                    blur: function(field){
+                    blur: function(field) {
                        field.next().validate();
-                    }
+                    },
                },
                cbind: {
-                   hidden: '{!create}',
-                   disabled: '{!create}'
-               }
+                   hidden: '{!isCreate}',
+                   disabled: '{!isCreate}',
+               },
            },
            {
-               xtype: 'textfield',
+               xtype: 'textfield',
                inputType: 'password',
                fieldLabel: gettext('Confirm password'),
                name: 'verifypassword',
@@ -71,9 +74,9 @@ Ext.define('PMG.UserEdit', {
                allowBlank: false,
                submitValue: false,
                cbind: {
-                   hidden: '{!create}',
-                   disabled: '{!create}'
-               }
+                   hidden: '{!isCreate}',
+                   disabled: '{!isCreate}',
+               },
            },
            {
                xtype: 'pmgRoleSelector',
@@ -81,8 +84,8 @@ Ext.define('PMG.UserEdit', {
                allowBlank: false,
                fieldLabel: gettext('Role'),
                cbind: {
-                   disabled: '{isSuperUser}'
-               }
+                   disabled: '{isSuperUser}',
+               },
            },
            {
                 xtype: 'datefield',
@@ -92,8 +95,8 @@ Ext.define('PMG.UserEdit', {
                submitFormat: 'U',
                 fieldLabel: gettext('Expire'),
                cbind: {
-                   disabled: '{isSuperUser}'
-               }
+                   disabled: '{isSuperUser}',
+               },
             },
            {
                xtype: 'proxmoxcheckbox',
@@ -103,9 +106,9 @@ Ext.define('PMG.UserEdit', {
                defaultValue: 1,
                checked: true,
                cbind: {
-                   disabled: '{isSuperUser}'
-               }
-           }
+                   disabled: '{isSuperUser}',
+               },
+           },
        ],
 
        column2: [
@@ -114,16 +117,16 @@ Ext.define('PMG.UserEdit', {
                name: 'firstname',
                fieldLabel: gettext('First Name'),
                cbind: {
-                   deleteEmpty: '{!create}'
-               }
+                   deleteEmpty: '{!isCreate}',
+               },
            },
            {
                xtype: 'proxmoxtextfield',
                name: 'lastname',
                fieldLabel: gettext('Last Name'),
                cbind: {
-                   deleteEmpty: '{!create}'
-               }
+                   deleteEmpty: '{!isCreate}',
+               },
            },
            {
                xtype: 'proxmoxtextfield',
@@ -131,9 +134,9 @@ Ext.define('PMG.UserEdit', {
                fieldLabel: gettext('E-Mail'),
                vtype: 'proxmoxMail',
                cbind: {
-                   deleteEmpty: '{!create}'
-               }
-           }
+                   deleteEmpty: '{!isCreate}',
+               },
+           },
        ],
 
        columnB: [
@@ -143,18 +146,18 @@ Ext.define('PMG.UserEdit', {
                fieldLabel: gettext('Comment'),
                cbind: {
                    disabled: '{isSuperUser}',
-                   deleteEmpty: '{!create}'
-               }
+                   deleteEmpty: '{!isCreate}',
+               },
            },
            {
                xtype: 'proxmoxtextfield',
                name: 'keys',
                fieldLabel: gettext('Key IDs'),
                cbind: {
-                   deleteEmpty: '{!create}'
-               }
-           }
-       ]
+                   deleteEmpty: '{!isCreate}',
+               },
+           },
+       ],
     },
 
     getValues: function(dirtyOnly) {
@@ -167,7 +170,7 @@ Ext.define('PMG.UserEdit', {
            values.expire = 0;
        }
 
-       if (me.create) {
+       if (me.isCreate) {
            values.userid = values.username + '@pmg';
        }
 
@@ -193,5 +196,5 @@ Ext.define('PMG.UserEdit', {
        }
 
        me.callParent([values]);
-    }
+    },
 });