From 279948e95f21ffed7f890e5253693a307953d255 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Mon, 30 May 2016 15:04:51 +0500 Subject: Disable command button if device is not online. --- web/app/store/Devices.js | 6 ++++++ web/app/view/Devices.js | 1 + web/app/view/DevicesController.js | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) (limited to 'web/app') diff --git a/web/app/store/Devices.js b/web/app/store/Devices.js index 8ba513792..5084ff554 100644 --- a/web/app/store/Devices.js +++ b/web/app/store/Devices.js @@ -24,5 +24,11 @@ Ext.define('Traccar.store.Devices', { writer: { writeAllFields: true } + }, + listeners : { + update: function () { + devicesPanel = Ext.getCmp('devicesPanel'); + devicesPanel.fireEvent('selectionchange',devicesPanel.getSelectionModel()); + } } }); diff --git a/web/app/view/Devices.js b/web/app/view/Devices.js index f06c2658b..31eead2f7 100644 --- a/web/app/view/Devices.js +++ b/web/app/view/Devices.js @@ -17,6 +17,7 @@ Ext.define('Traccar.view.Devices', { extend: 'Ext.grid.Panel', xtype: 'devicesView', + id: 'devicesPanel', requires: [ 'Traccar.view.DevicesController', diff --git a/web/app/view/DevicesController.js b/web/app/view/DevicesController.js index 9dee0ff7c..8c1bba00f 100644 --- a/web/app/view/DevicesController.js +++ b/web/app/view/DevicesController.js @@ -103,7 +103,7 @@ Ext.define('Traccar.view.DevicesController', { var empty = selected.getCount() === 0; this.lookupReference('toolbarEditButton').setDisabled(empty); this.lookupReference('toolbarRemoveButton').setDisabled(empty); - this.lookupReference('deviceCommandButton').setDisabled(empty); + this.lookupReference('deviceCommandButton').setDisabled(empty || (selected.getLastSelected().get('status') !== 'online')); if (!empty) { this.fireEvent('selectDevice', selected.getLastSelected(), true); } -- cgit v1.2.3