aboutsummaryrefslogtreecommitdiff
path: root/web/app/view/ReportController.js
diff options
context:
space:
mode:
authorAbyss777 <abyss@fox5.ru>2016-10-07 13:45:58 +0500
committerAbyss777 <abyss@fox5.ru>2016-10-07 13:45:58 +0500
commite042dbc8f28faa005019744abf0d8c80340902bf (patch)
tree01b214a58aad95653abcd143afdf2b7bf2f0d7a5 /web/app/view/ReportController.js
parenta47bf8f3eb6807c4fc9094f6e1e6b62185354b2c (diff)
downloadtrackermap-web-e042dbc8f28faa005019744abf0d8c80340902bf.tar.gz
trackermap-web-e042dbc8f28faa005019744abf0d8c80340902bf.tar.bz2
trackermap-web-e042dbc8f28faa005019744abf0d8c80340902bf.zip
- Draw trip route on click
- Add some object class checks - Add missed imports
Diffstat (limited to 'web/app/view/ReportController.js')
-rw-r--r--web/app/view/ReportController.js27
1 files changed, 26 insertions, 1 deletions
diff --git a/web/app/view/ReportController.js b/web/app/view/ReportController.js
index 8e1aa711..fefa88a8 100644
--- a/web/app/view/ReportController.js
+++ b/web/app/view/ReportController.js
@@ -22,6 +22,8 @@ Ext.define('Traccar.view.ReportController', {
requires: [
'Traccar.AttributeFormatter',
+ 'Traccar.model.Position',
+ 'Traccar.model.ReportTrip',
'Traccar.view.ReportConfigDialog',
'Traccar.store.ReportEventTypes'
],
@@ -112,7 +114,15 @@ Ext.define('Traccar.view.ReportController', {
},
onClearClick: function () {
+ var reportType = this.lookupReference('reportTypeField').getValue();
+ this.clearReport(reportType);
+ },
+
+ clearReport: function (reportType) {
this.getView().getStore().removeAll();
+ if (reportType === 'trips') {
+ Ext.getStore('ReportRoute').removeAll();
+ }
},
onSelectionChange: function (selected) {
@@ -130,9 +140,24 @@ Ext.define('Traccar.view.ReportController', {
selectReport: function (position, center) {
if (position instanceof Traccar.model.Position) {
this.getView().getSelectionModel().select([position], false, true);
+ } else if (position instanceof Traccar.model.ReportTrip) {
+ this.selectTrip(position);
}
},
+ selectTrip: function (trip) {
+ var from, to;
+ from = new Date(trip.get('startTime'));
+ to = new Date(trip.get('endTime'));
+ Ext.getStore('ReportRoute').load({
+ params: {
+ deviceId: trip.get('deviceId'),
+ from: from.toISOString(),
+ to: to.toISOString()
+ }
+ });
+ },
+
downloadCsv: function (requestUrl, requestParams) {
Ext.Ajax.request({
url: requestUrl,
@@ -170,7 +195,7 @@ Ext.define('Traccar.view.ReportController', {
onTypeChange: function (combobox, newValue, oldValue) {
if (oldValue !== null) {
- this.onClearClick();
+ this.clearReport(oldValue);
}
if (newValue === 'route') {