2015-07-03 11:29:11 +02:00
Ext . define ( 'PVE.form.UserSelector' , {
2018-01-15 15:17:50 +01:00
extend : 'Proxmox.form.ComboGrid' ,
2015-07-03 11:29:11 +02:00
alias : [ 'widget.pveUserSelector' ] ,
2016-03-08 11:03:54 +01:00
allowBlank : false ,
autoSelect : false ,
valueField : 'userid' ,
displayField : 'userid' ,
2015-07-03 11:29:11 +02:00
initComponent : function ( ) {
var me = this ;
var store = new Ext . data . Store ( {
2016-12-07 15:41:49 +01:00
model : 'pve-users' ,
sorters : [ {
property : 'userid'
} ]
2015-07-03 11:29:11 +02:00
} ) ;
var render _full _name = function ( firstname , metaData , record ) {
var first = firstname || '' ;
var last = record . data . lastname || '' ;
return first + " " + last ;
} ;
Ext . apply ( me , {
store : store ,
listConfig : {
columns : [
{
header : gettext ( 'User' ) ,
sortable : true ,
dataIndex : 'userid' ,
flex : 1
} ,
{
header : gettext ( 'Name' ) ,
sortable : true ,
renderer : render _full _name ,
dataIndex : 'firstname' ,
flex : 1
} ,
{
header : gettext ( 'Comment' ) ,
sortable : false ,
dataIndex : 'comment' ,
2016-06-09 16:06:32 +02:00
renderer : Ext . String . htmlEncode ,
2015-07-03 11:29:11 +02:00
flex : 1
}
]
}
} ) ;
me . callParent ( ) ;
store . load ( { params : { enabled : 1 } } ) ;
}
} , function ( ) {
Ext . define ( 'pve-users' , {
extend : 'Ext.data.Model' ,
2016-03-08 11:03:57 +01:00
fields : [
2015-07-03 11:29:11 +02:00
'userid' , 'firstname' , 'lastname' , 'email' , 'comment' ,
2016-03-08 11:03:57 +01:00
{ type : 'boolean' , name : 'enable' } ,
2015-07-03 11:29:11 +02:00
{ type : 'date' , dateFormat : 'timestamp' , name : 'expire' }
] ,
proxy : {
type : 'pve' ,
url : "/api2/json/access/users"
} ,
idProperty : 'userid'
} ) ;
} ) ;