| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- /**
- * Loads a grid of Role and User pairs.
- *
- * @deprecated
- *
- * @class MODx.grid.AccessResourceGroup
- * @extends MODx.grid.Grid
- * @param {Object} config An object of options.
- * @xtype modx-grid-roleuser
- */
- MODx.grid.RoleUser = function(config) {
- config = config || {};
- Ext.applyIf(config,{
- title: _('role_users')
- ,url: MODx.config.connector_url
- ,fields: ['id','username','fullname','email']
- ,baseParams: {
- action: 'security/role/getUsers'
- ,role: config.role
- }
- ,autosave: true
- ,paging: true
- ,columns: [
- { header: _('id') ,dataIndex: 'id' ,width: 40 }
- ,{ header: _('username') ,dataIndex: 'username' ,width: 175 }
- ,{ header: _('name') ,dataIndex: 'fullname' ,width: 175 }
- ,{ header: _('email') ,dataIndex: 'email' ,width: 200 }
- ]
- ,tbar: this.getToolbar()
- });
- MODx.grid.RoleUser.superclass.constructor.call(this,config);
- };
- Ext.extend(MODx.grid.RoleUser,MODx.grid.Grid,{
- combos: {}
- /**
- * Runs a confirm dialog, and if proceeding, removes the modUser.
- */
- ,removeUser: function() {
- MODx.msg.confirm({
- title: _('role_user_remove')
- ,text: _('role_user_confirm_remove')
- ,url: this.config.url
- ,params: {
- action: 'security/role/removeUser'
- ,user: this.menu.record.id
- ,role: this.config.role
- }
- ,listeners: {
- 'success': {fn:this.refresh,scope:this}
- }
- });
- }
- /**
- * Adds a user to the role based upon the combobox value.
- */
- ,addUser: function(btn,e) {
- var user = Ext.getCmp('rugrid-combo-user').getValue();
- MODx.Ajax.request({
- url: this.config.url
- ,params: {
- action: 'security/role/addUser'
- ,role: this.config.role
- ,user: user
- }
- ,listeners: {
- 'success': {fn:function(r) {
- this.getStore().baseParams = {
- action: 'security/role/getUsers'
- ,role: this.config.role
- };
- Ext.getCmp('rugrid-combo-usergroup').setValue('');
- this.refresh();
- },scope:this}
- }
- });
- }
- /**
- * Loads the context menu for the user-role pairing.
- */
- ,_loadMenu: function() {
- this.menu = new Ext.menu.Menu({ defaultAlign: 'tl-b?' });
- this.menu.add({
- text: _('role_user_remove')
- ,handler: this.removeUser
- ,scope: this
- });
- }
- /**
- * Returns the custom toolbar for the grid.
- */
- ,getToolbar: function() {
- return [
- _('role_user_add')+': '
- ,{
- xtype: 'modx-combo-user'
- ,id: 'rugrid-combo-user'
- },{
- xtype: 'button'
- ,text: 'Add'
- ,scope: this
- ,handler: this.addUser
- }
- ,'->'
- ,_('group')+': '
- ,{
- xtype: 'modx-combo-usergroup'
- ,id: 'rugrid-combo-usergroup'
- ,listeners: {
- 'select': {fn:function(btn,e) {
- this.store.baseParams = {
- action: 'security/role/getUsers'
- ,role: this.config.role
- ,group: Ext.getCmp('rugrid-combo-usergroup').getValue()
- };
- this.refresh();
- },scope:this}
- }
- },{
- xtype: 'button'
- ,text: _('clear_filter')
- ,scope: this
- ,handler: function(btn,e) {
- this.getStore().baseParams = {
- action: 'security/role/getUsers'
- ,role: this.config.role
- };
- Ext.getCmp('rugrid-combo-usergroup').setValue('');
- this.getStore().load();
- }
- }
- ];
- }
- });
- Ext.reg('modx-grid-roleuser',MODx.grid.RoleUser);
|