From fd4029af507afac83fa5db4b863b26ac2e205bd3 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Wed, 9 Aug 2017 16:04:20 +0500 Subject: Select device on load if there is deviceId url parameter --- web/app/controller/Root.js | 14 ++++++++++++-- web/app/view/edit/DevicesController.js | 3 +++ web/load.js | 2 +- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/web/app/controller/Root.js b/web/app/controller/Root.js index d85102a..902ef21 100644 --- a/web/app/controller/Root.js +++ b/web/app/controller/Root.js @@ -17,6 +17,7 @@ Ext.define('Traccar.controller.Root', { extend: 'Ext.app.Controller', + alias: 'controller.root', requires: [ 'Traccar.view.dialog.Login', @@ -225,7 +226,7 @@ Ext.define('Traccar.controller.Root', { }, updatePositions: function (array, first) { - var i, store, entity; + var i, store, entity, deviceId, device; store = Ext.getStore('LatestPositions'); for (i = 0; i < array.length; i++) { entity = store.findRecord('deviceId', array[i].deviceId, 0, false, false, true); @@ -239,7 +240,16 @@ Ext.define('Traccar.controller.Root', { } } if (first) { - this.zoomToAllDevices(); + deviceId = Ext.Object.fromQueryString(window.location.search).deviceId; + if (deviceId) { + device = Ext.getStore('Devices').getById(deviceId); + if (device) { + this.fireEvent('selectdevice', device, true); + } + } + if (!device) { + this.zoomToAllDevices(); + } } }, diff --git a/web/app/view/edit/DevicesController.js b/web/app/view/edit/DevicesController.js index 9de298c..ae65fbb 100644 --- a/web/app/view/edit/DevicesController.js +++ b/web/app/view/edit/DevicesController.js @@ -36,6 +36,9 @@ Ext.define('Traccar.view.edit.DevicesController', { '*': { selectreport: 'selectReport' }, + 'root': { + selectdevice: 'selectDevice' + }, 'map': { selectdevice: 'selectDevice', deselectfeature: 'deselectFeature' diff --git a/web/load.js b/web/load.js index 86b9829..1845cd1 100644 --- a/web/load.js +++ b/web/load.js @@ -126,7 +126,7 @@ addScriptFile(debugMode ? 'app.js' : 'app.min.js'); } }); - } else { + } else { addScriptFile(debugMode ? 'app.js' : 'app.min.js'); } } -- cgit v1.2.3 From 959797ec42f8ac770531c73101aa716c1a7b08fa Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Wed, 9 Aug 2017 16:19:34 +0500 Subject: Select only visible device --- web/app/controller/Root.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/app/controller/Root.js b/web/app/controller/Root.js index 902ef21..baba68a 100644 --- a/web/app/controller/Root.js +++ b/web/app/controller/Root.js @@ -242,7 +242,7 @@ Ext.define('Traccar.controller.Root', { if (first) { deviceId = Ext.Object.fromQueryString(window.location.search).deviceId; if (deviceId) { - device = Ext.getStore('Devices').getById(deviceId); + device = Ext.getStore('VisibleDevices').findRecord('id', deviceId, 0, false, true, true); if (device) { this.fireEvent('selectdevice', device, true); } -- cgit v1.2.3