partkeepr

fork of partkeepr
git clone https://git.e1e0.net/partkeepr.git
Log | Files | Refs | Submodules | README | LICENSE

UserGrid.js (2194B)


      1 Ext.define('PartKeepr.UserGrid', {
      2     extend: 'PartKeepr.EditorGrid',
      3     alias: 'widget.UserGrid',
      4     columns: [
      5         {
      6             header: i18n("User"),
      7             dataIndex: 'username',
      8             flex: 1
      9         }, {
     10             header: i18n("Provider"),
     11             renderer: function (value, metaData, record)
     12             {
     13                 if (record.getProvider() !== null) {
     14                     return record.getProvider().get("type");
     15                 } else {
     16                     return "";
     17                 }
     18 
     19 
     20             },
     21             flex: 1
     22         },
     23         {
     24             header: i18n("Active"),
     25             xtype: 'booleancolumn',
     26             dataIndex: 'active',
     27             trueText: '<span style="vertical-align: top;" class="web-icon accept"/>',
     28             falseText: '<span style="vertical-align: top;" class="web-icon cancel"/>',
     29             flex: 0.5
     30         }
     31     ],
     32     addButtonText: i18n("Add User"),
     33     addButtonIconCls: 'fugue-icon user--plus',
     34     deleteButtonText: i18n("Delete User"),
     35     deleteButtonIconCls: 'fugue-icon user--minus',
     36     automaticPageSize: true,
     37 
     38     initComponent: function ()
     39     {
     40         this.callParent(arguments);
     41 
     42         this.providerStore = Ext.create("PartKeepr.data.store.UserProviderStore");
     43 
     44         this.providerCombo = Ext.create("Ext.form.field.ComboBox", {
     45             store: this.providerStore,
     46             displayField: 'type',
     47             valueField: '@Id',
     48             editable: false,
     49             forceSelection: true,
     50             fieldLabel: i18n("Type"),
     51             listeners: {
     52                 select: "onProviderSelect",
     53                 scope: this
     54             }
     55         });
     56 
     57         this.providerToolbar = Ext.create("Ext.toolbar.Toolbar", {
     58             dock: 'top',
     59             enableOverflow: true,
     60             items: this.providerCombo
     61         });
     62 
     63         this.filter = Ext.create("PartKeepr.util.Filter", {
     64             property: "provider",
     65             operator: "=",
     66             value: ""
     67         });
     68 
     69         this.addDocked(this.providerToolbar);
     70     },
     71     onProviderSelect: function (combo, record)
     72     {
     73         this.filter.setValue(record);
     74         this.store.addFilter(this.filter);
     75     }
     76 });