diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2016-04-12 20:52:36 +1200 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2016-04-12 20:53:09 +1200 |
commit | 75ed21f2e12c02bc7a7231e3345c757d04693abb (patch) | |
tree | fffb0ba99221fb318ed751b370958560e6d7e7ce /web | |
parent | ccd8cce3f0bfb06027a4185836f1c1f72fc234fb (diff) | |
download | traccar-server-75ed21f2e12c02bc7a7231e3345c757d04693abb.tar.gz traccar-server-75ed21f2e12c02bc7a7231e3345c757d04693abb.tar.bz2 traccar-server-75ed21f2e12c02bc7a7231e3345c757d04693abb.zip |
Implement device groupping in grid
Diffstat (limited to 'web')
-rw-r--r-- | web/app/view/Devices.js | 16 | ||||
-rw-r--r-- | web/l10n/en.json | 1 |
2 files changed, 16 insertions, 1 deletions
diff --git a/web/app/view/Devices.js b/web/app/view/Devices.js index 3dd81eb05..ae46ba080 100644 --- a/web/app/view/Devices.js +++ b/web/app/view/Devices.js @@ -29,13 +29,27 @@ Ext.define('Traccar.view.Devices', { initComponent: function() { this.store = Ext.create('Ext.data.ChainedStore', { - source: 'Devices' + source: 'Devices', + groupField: 'groupId' }); this.callParent(); }, title: Strings.deviceTitle, selType: 'rowmodel', + features: [{ + ftype: 'grouping', + groupHeaderTpl: Ext.create('Ext.XTemplate', '{name:this.getGroupName}', { + getGroupName: function (v) { + var groupId = Number(v); + if (groupId) { + return Ext.getStore('Groups').getById(groupId).get('name'); + } else { + return Strings.groupNoGroup; + } + } + }) + }], tbar: { xtype: 'editToolbar', diff --git a/web/l10n/en.json b/web/l10n/en.json index 141ea5b96..1c8cc2bd0 100644 --- a/web/l10n/en.json +++ b/web/l10n/en.json @@ -38,6 +38,7 @@ "deviceFollow": "Follow", "groupDialog": "Group", "groupParent": "Group", + "groupNoGroup": "No Group", "settingsTitle": "Settings", "settingsUser": "Account", "settingsGroups": "Groups", |