pve-manager/www/manager/dc/ACLView.js
2011-08-23 07:40:22 +02:00

84 lines
1.3 KiB
JavaScript

Ext.define('PVE.dc.ACLView', {
extend: 'Ext.grid.GridPanel',
alias: ['widget.pveACLView'],
initComponent : function() {
var me = this;
var store = new Ext.data.Store({
model: 'pve-acl',
proxy: {
type: 'pve',
url: "/api2/json/access/acl"
},
sorters: {
property: 'path',
order: 'DESC'
}
});
var render_ugid = function(ugid, metaData, record) {
if (record.data.type == 'group') {
return '@' + ugid;
}
return ugid;
};
Ext.apply(me, {
store: store,
stateful: false,
viewConfig: {
trackOver: false
},
columns: [
{
header: 'Path',
width: 200,
sortable: true,
dataIndex: 'path'
},
{
header: 'User/Group',
width: 200,
sortable: true,
renderer: render_ugid,
dataIndex: 'ugid'
},
{
header: 'Role',
width: 150,
sortable: true,
dataIndex: 'roleid'
},
{
header: 'Propagate',
width: 80,
sortable: true,
dataIndex: 'propagate'
}
],
listeners: {
show: function() {
store.load();
}
}
});
me.callParent();
}
}, function() {
Ext.define('pve-acl', {
extend: 'Ext.data.Model',
fields: [
'path', 'type', 'ugid', 'roleid',
{
name: 'propagate',
type: 'boolean'
}
]
});
});