diff options
Diffstat (limited to 'web/app/view/GroupsController.js')
-rw-r--r-- | web/app/view/GroupsController.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/web/app/view/GroupsController.js b/web/app/view/GroupsController.js index 6cc568ea2..bc713bb6d 100644 --- a/web/app/view/GroupsController.js +++ b/web/app/view/GroupsController.js @@ -18,6 +18,10 @@ Ext.define('Traccar.view.GroupsController', { extend: 'Ext.app.ViewController', alias: 'controller.groups', + requires: [ + 'Traccar.view.GroupGeofences' + ], + onAddClick: function () { var group, dialog; group = Ext.create('Traccar.model.Group'); @@ -55,9 +59,26 @@ Ext.define('Traccar.view.GroupsController', { }); }, + onGeofencesClick: function () { + var admin = Traccar.app.getUser().get('admin'); + var group = this.getView().getSelectionModel().getSelection()[0]; + Ext.create('Traccar.view.BaseWindow', { + title: Strings.sharedGeofences, + items: { + xtype: 'groupGeofencesView', + baseObjectName: 'groupId', + linkObjectName: 'geofenceId', + storeName: (admin) ? 'AllGeofences' : 'Geofences', + urlApi: '/api/groups/geofences', + baseObject: group.getData().id + } + }).show(); + }, + onSelectionChange: function (selected) { var disabled = selected.length > 0; this.lookupReference('toolbarEditButton').setDisabled(disabled); this.lookupReference('toolbarRemoveButton').setDisabled(disabled); + this.lookupReference('toolbarGeofencesButton').setDisabled(disabled); } }); |