fleetmap-reports 2.0.358 → 2.0.359

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/package.json +1 -1
  2. package/src/partnerReports/driverranking-report.js +39 -7
  3. package/.claude/worktrees/eager-stonebraker-c08ac7/.eslintrc.js +0 -15
  4. package/.claude/worktrees/eager-stonebraker-c08ac7/lang/enGB.js +0 -309
  5. package/.claude/worktrees/eager-stonebraker-c08ac7/lang/esCL.js +0 -297
  6. package/.claude/worktrees/eager-stonebraker-c08ac7/lang/frFR.json +0 -324
  7. package/.claude/worktrees/eager-stonebraker-c08ac7/lang/index.js +0 -35
  8. package/.claude/worktrees/eager-stonebraker-c08ac7/lang/ptBR.js +0 -301
  9. package/.claude/worktrees/eager-stonebraker-c08ac7/lang/ptPT.js +0 -310
  10. package/.claude/worktrees/eager-stonebraker-c08ac7/package-lock.json +0 -11944
  11. package/.claude/worktrees/eager-stonebraker-c08ac7/package.json +0 -45
  12. package/.claude/worktrees/eager-stonebraker-c08ac7/src/activity-report.js +0 -822
  13. package/.claude/worktrees/eager-stonebraker-c08ac7/src/automaticReports.js +0 -34
  14. package/.claude/worktrees/eager-stonebraker-c08ac7/src/carbone/index.js +0 -13
  15. package/.claude/worktrees/eager-stonebraker-c08ac7/src/custom/vistawasteActivity-report.js +0 -544
  16. package/.claude/worktrees/eager-stonebraker-c08ac7/src/events-report.js +0 -360
  17. package/.claude/worktrees/eager-stonebraker-c08ac7/src/fuel-consumption-report.js +0 -296
  18. package/.claude/worktrees/eager-stonebraker-c08ac7/src/fuel-drop-report.js +0 -128
  19. package/.claude/worktrees/eager-stonebraker-c08ac7/src/here.js +0 -172
  20. package/.claude/worktrees/eager-stonebraker-c08ac7/src/idle-report.js +0 -403
  21. package/.claude/worktrees/eager-stonebraker-c08ac7/src/index.js +0 -244
  22. package/.claude/worktrees/eager-stonebraker-c08ac7/src/kms-report.js +0 -549
  23. package/.claude/worktrees/eager-stonebraker-c08ac7/src/location-report.js +0 -496
  24. package/.claude/worktrees/eager-stonebraker-c08ac7/src/machines-report.js +0 -278
  25. package/.claude/worktrees/eager-stonebraker-c08ac7/src/partnerReports/afriquia.js +0 -129
  26. package/.claude/worktrees/eager-stonebraker-c08ac7/src/partnerReports/dailyuse-report.js +0 -80
  27. package/.claude/worktrees/eager-stonebraker-c08ac7/src/partnerReports/delayedstart-report.js +0 -223
  28. package/.claude/worktrees/eager-stonebraker-c08ac7/src/partnerReports/driverranking-report.js +0 -328
  29. package/.claude/worktrees/eager-stonebraker-c08ac7/src/partnerReports/gpsjump-report.js +0 -61
  30. package/.claude/worktrees/eager-stonebraker-c08ac7/src/partnerReports/performance-report.js +0 -359
  31. package/.claude/worktrees/eager-stonebraker-c08ac7/src/refueling-report.js +0 -345
  32. package/.claude/worktrees/eager-stonebraker-c08ac7/src/reportStyle.js +0 -34
  33. package/.claude/worktrees/eager-stonebraker-c08ac7/src/sensor-report.js +0 -447
  34. package/.claude/worktrees/eager-stonebraker-c08ac7/src/speeding-report.js +0 -663
  35. package/.claude/worktrees/eager-stonebraker-c08ac7/src/stop-report.js +0 -242
  36. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/ActivityReportTemplate.mjml +0 -51
  37. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/EmptyReportTemplate.mjml +0 -25
  38. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/EventsReportTemplate.mjml +0 -75
  39. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/FuelDropReportTemplate.mjml +0 -60
  40. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/IdleReportTemplate.mjml +0 -54
  41. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/KmsReportGroupByDayTemplate.mjml +0 -43
  42. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/KmsReportTemplate.mjml +0 -44
  43. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/LocationReportTemplate.mjml +0 -37
  44. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/RefuelingReportTemplate.mjml +0 -60
  45. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/SensorReportTemplate.mjml +0 -23
  46. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/SpeedingReportTemplate.mjml +0 -80
  47. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/TripReportTemplate.mjml +0 -97
  48. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/ZoneReportTemplate.mjml +0 -52
  49. package/.claude/worktrees/eager-stonebraker-c08ac7/src/templates/report.mjml +0 -96
  50. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/activity.test.js +0 -99
  51. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/carbone.test.js +0 -20
  52. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/events.test.js +0 -30
  53. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/fuel.test.js +0 -35
  54. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/idle.test.js +0 -16
  55. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/index.js +0 -24
  56. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/index.test.js +0 -203
  57. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/kms.test.js +0 -74
  58. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/performance.test.js +0 -36
  59. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/positions.test.js +0 -67
  60. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/speeding.test.js +0 -120
  61. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/translations.test.js +0 -21
  62. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/trips.test.js +0 -140
  63. package/.claude/worktrees/eager-stonebraker-c08ac7/src/tests/zones.test.js +0 -162
  64. package/.claude/worktrees/eager-stonebraker-c08ac7/src/trip-report.js +0 -641
  65. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/device.js +0 -13
  66. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/driver.js +0 -90
  67. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/fuel.js +0 -102
  68. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/geofence.js +0 -52
  69. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/odoo.js +0 -18
  70. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/parallel.js +0 -64
  71. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/pdfDocument.js +0 -140
  72. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/route.js +0 -78
  73. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/timetable.js +0 -30
  74. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/traccar.js +0 -213
  75. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/traccar.worker.js +0 -49
  76. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/trips.js +0 -270
  77. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/utils.js +0 -358
  78. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/worker.js +0 -14
  79. package/.claude/worktrees/eager-stonebraker-c08ac7/src/util/xpert.js +0 -58
  80. package/.claude/worktrees/eager-stonebraker-c08ac7/src/word/index.js +0 -95
  81. package/.claude/worktrees/eager-stonebraker-c08ac7/src/zone-report.js +0 -904
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fleetmap-reports",
3
- "version": "2.0.358",
3
+ "version": "2.0.359",
4
4
  "description": "",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -2,7 +2,7 @@ const traccarHelper = require('../util/traccar')
2
2
  const { getDriverData, devicesByDriver } = require('../util/driver')
3
3
  const { getCanDriverStyleMessages, parseCanDriverStyleMessage } = require('../util/xpert')
4
4
  const { calculateRPMSections } = require('./performance-report')
5
- const { getTranslations, isClientSide, convertToLocaleString, convertMS } = require('../util/utils')
5
+ const { getTranslations, isClientSide, convertToLocaleString, convertMS, executeServerSide } = require('../util/utils')
6
6
  const jsPDF = require('jspdf')
7
7
  const { headerFromUser, addTable } = require('../util/pdfDocument')
8
8
  const { getStyle } = require('../reportStyle')
@@ -65,9 +65,28 @@ async function create (from, to, userData, traccar) {
65
65
  userData.geofences = []
66
66
  userData.roadSpeedLimits = true
67
67
 
68
- const { devices, drivers } = await devicesByDriver(traccar, from, to, userData.drivers, userData.devices)
69
- userData.drivers = drivers
68
+ if (!userData.requestToRunServerSide) {
69
+ const { devices, drivers } = await devicesByDriver(traccar, from, to, userData.drivers, userData.devices)
70
+ userData.devices = devices
71
+ userData.drivers = drivers
72
+ }
73
+
74
+ if (isClientSide() && (userData.drivers.length > 50 || ((new Date(to).getTime() - new Date(from).getTime()) > (1000 * 60 * 60 * 24 * 15)))) {
75
+ const sliced = automaticReports.sliceArray(userData.drivers, 5)
76
+ userData.requestToRunServerSide = true
77
+ userData.byDriver = true
78
+ const allDriversData = await executeServerSide('driverranking-report', sliced, from, to, userData, userData.drivers.length, traccar, 5)
70
79
 
80
+ allDriversData.sort((a, b) => b.overallScore - a.overallScore)
81
+ allDriversData.forEach((d, index) => { d.rank = index + 1 })
82
+
83
+ reportData.drivers = allDriversData
84
+ reportData.target = buildTargets(userData)
85
+ reportData.coefficient = buildCoefficients()
86
+ return reportData
87
+ }
88
+
89
+ const devices = userData.devices
71
90
  let deviceCount = 0
72
91
  const driversData = new Map()
73
92
  const overspeedEvents = await getOverspeedEvents(from, to, userData, devices, userData, traccar)
@@ -133,8 +152,14 @@ async function create (from, to, userData, traccar) {
133
152
  allDriversData.forEach((d, index) => { d.rank = index + 1 })
134
153
 
135
154
  reportData.drivers.push(...allDriversData)
155
+ reportData.target = buildTargets(userData)
156
+ reportData.coefficient = buildCoefficients()
136
157
 
137
- reportData.target = {
158
+ return reportData
159
+ }
160
+
161
+ function buildTargets (userData) {
162
+ return {
138
163
  distanceTarget: userData.distanceTarget,
139
164
  rpmTarget: userData.rpmTarget,
140
165
  hardBrakingTarget: userData.hardBrakingTarget,
@@ -147,8 +172,10 @@ async function create (from, to, userData, traccar) {
147
172
  reverseTarget: userData.reverseTarget,
148
173
  otherTarget: userData.otherTarget
149
174
  }
175
+ }
150
176
 
151
- reportData.coefficient = {
177
+ function buildCoefficients () {
178
+ return {
152
179
  distanceCoefficient,
153
180
  rpmCoefficient,
154
181
  hardBrakingCoefficient,
@@ -161,8 +188,6 @@ async function create (from, to, userData, traccar) {
161
188
  reverseCoefficient,
162
189
  otherCoefficient
163
190
  }
164
-
165
- return reportData
166
191
  }
167
192
 
168
193
  async function processDevice (driversData, device, userData, allInOne, alarmEvents, overspeedEvents) {
@@ -423,6 +448,13 @@ async function exportToPDF (userData, reportData) {
423
448
  }
424
449
  }
425
450
 
451
+ // Entry point for the generic server-side report dispatcher (see executeServerSide / pinme-backend-v2's getReport),
452
+ // which requires a "create" + PascalCase(report name) export returning an array.
453
+ async function createDriverrankingReport (from, to, userData, traccar) {
454
+ return [await create(from, to, userData, traccar)]
455
+ }
456
+
426
457
  exports.create = create
458
+ exports.createDriverrankingReport = createDriverrankingReport
427
459
  exports.exportToPDF = exportToPDF
428
460
  exports.exportToExcel = exportToExcel
@@ -1,15 +0,0 @@
1
- module.exports = {
2
- env: {
3
- browser: true,
4
- commonjs: true,
5
- es2021: true
6
- },
7
- extends: [
8
- 'standard'
9
- ],
10
- parserOptions: {
11
- ecmaVersion: 'latest'
12
- },
13
- rules: {
14
- }
15
- }
@@ -1,309 +0,0 @@
1
- module.exports = {
2
- route: {
3
- map: 'Map',
4
- dashboard: 'Dashboard',
5
- reports: 'Reports',
6
- report: 'Report',
7
- report_trip_title: 'Trip Report',
8
- report_location_title: 'Location Report',
9
- report_zone_crossing: 'Zone Report',
10
- report_speeding: 'Relatório de Excessos de Velocidade',
11
- report_speeding_beta: 'Relatório de Excessos de Velocidade BETA',
12
- report_tolls: 'Relatório de Portagens',
13
- settings: 'Settings',
14
- duration: 'Duration'
15
- },
16
- map: {
17
- geofence_create_title: 'New geofence',
18
- geofence_create_name: 'Please enter the name of this geofence...',
19
- geofence_created: 'Geofence created sucessfully!',
20
- geofence_create_canceled: 'Input canceled',
21
- poi_create_title: 'New POI',
22
- poi_create_name: 'Please enter the name of this POI...',
23
- poi_created: 'POI created sucessfully!',
24
- poi_create_canceled: 'Input canceled',
25
- create_confirm: 'OK',
26
- create_cancel: 'Cancel',
27
- loading: 'Loading',
28
- totalDistance: 'Distância total'
29
- },
30
- vehicleList: {
31
- title: 'Vehicle',
32
- search: 'Search...',
33
- column_name: 'Name',
34
- column_speed: 'Km/h',
35
- column_lastUpdate: 'Last update'
36
- },
37
- vehicleTable: {
38
- immobilize: 'Immobilize',
39
- de_immobilize: 'De-Immobilize',
40
- send_immobilization: 'Send immobilization command?',
41
- send_de_immobilization: 'Send de-immobilization command?',
42
- all_vehicles: 'All',
43
- moving_vehicles: 'Moving',
44
- idle_vehicles: 'Idle',
45
- stopped_vehicles: 'Stopped',
46
- disconnected_vehicles: 'Disconnected'
47
- },
48
- vehicleDetail: {
49
- show_route: 'Show route'
50
- },
51
- poiTable: {
52
- showPOIs: 'Show POIs',
53
- edit_poi: 'Edit',
54
- delete_poi: 'Delete'
55
- },
56
- dashboard: {
57
- startdate: 'Start date',
58
- enddate: 'End Date',
59
- period_lastweek: 'Last week',
60
- period_lastmonth: 'Last month',
61
- period_last3month: 'Last 3 months'
62
- },
63
- navbar: {
64
- profile: 'Profile',
65
- notifications: 'Notifications',
66
- settings: 'Settings',
67
- logout: 'Log Out'
68
- },
69
- login: {
70
- login_user: 'Email',
71
- login_password: 'Password',
72
- login_button: 'Login',
73
- login_password_warn: 'The password can not be less than 6 digits'
74
- },
75
- profile: {
76
- user_account: 'Account',
77
- user_name: 'Name',
78
- user_email: 'E-mail',
79
- user_password: 'Password',
80
- user_phone: 'Phone',
81
- user_language: 'Language',
82
- user_timezone: 'Timezone',
83
- user_update_button: 'Update',
84
- user_updated: 'User information has been updated successfully.',
85
- user_name_required: 'Name field is required',
86
- user_email_required: 'Please input a valid email',
87
- user_password_lengh: 'The password can not be less than 6 digits'
88
- },
89
- settings: {
90
- map: 'Map',
91
- vehicles: 'Vehicles',
92
- title: 'Settings',
93
- route_match: 'Route match',
94
- alerts: 'Alerts',
95
- alerts_type: 'Type',
96
- alerts_notificators: 'Notificators',
97
- alert_ignitionOff: 'Ignition Off',
98
- alert_ignitionOn: 'Ignition On',
99
- alert_geofenceEnter: 'Geofence Enter',
100
- alert_geofenceExit: 'Geofence Exit',
101
- alert_deviceOverspeed: 'Device Overspeed',
102
- alert_deleted: 'Alert has been deleted',
103
- alert_delete_info: 'Do you want to delete the alert ',
104
- alert_delete_title: 'Delete Alert',
105
- alert_edit_confirm: 'Confirm',
106
- alert_edit_cancel: 'Cancel',
107
- alert_created: 'Alert created sucessfully!',
108
- alert_updated: 'Alert updated sucessfully!',
109
- alert_add: 'Add Alert',
110
- alert_edit: 'Edit Alert',
111
- alert_delete: 'Delete Alert',
112
- alert_overspeed_warning: 'Vehicle without defined top speed',
113
- alert_geofences_warning: 'Vehicle without associated geofences',
114
- alert_associate_geofences: 'Associate Geofences',
115
- alert_form_type: 'Type:',
116
- alert_form_type_placeholder: 'Select alert type',
117
- alert_form_vehicles: 'Vehicles:',
118
- alert_form_geofences: 'Geofences:',
119
- alert_form_all_vehicles: 'All vehicles',
120
- alert_form_vehicles_placeholder: 'Select vehicles',
121
- alert_form_notificator_web: 'Web',
122
- alert_form_notificator_email: 'E-mail',
123
- alert_form_notificator_sms: 'SMS',
124
- alert_form_confirm: 'Save',
125
- alert_form_cancel: 'Cancel',
126
- alert_form_geofences_placeholder: 'Select geofences',
127
- vehicle_edit: 'Edit Vehicle',
128
- vehicle_name: 'Name',
129
- vehicle_licenseplate: 'License Plate',
130
- vehicle_model: 'Model',
131
- vehicle_speed_limit: 'Speed Limit',
132
- vehicle_form_cancel: 'Cancel',
133
- vehicle_form_confirm: 'Save',
134
- vehicle_form_name: 'Name',
135
- vehicle_form_model: 'Model',
136
- vehicle_form_speed_limit: 'Speed Limit (Km/h)',
137
- vehicle_updated: 'Vehicle updated sucessfully!'
138
- },
139
- geofence: {
140
- showGeofences: 'Show Geofences',
141
- geofence_name: 'Name',
142
- geofence_edit: 'Edit',
143
- geofence_delete: 'Delete',
144
- geofence_deleted: 'Geofence has been deleted',
145
- geofence_delete_info: 'Do you want to delete geofence ',
146
- geofence_delete_title: 'Delete Geofence',
147
- geofence_edit_title: 'Edit Geofence',
148
- geofence_edit_name: 'Please enter the name of this geofence...',
149
- geofence_edit_confirm: 'Confirm',
150
- geofence_edit_cancel: 'Cancel',
151
- geofence_edit_canceled: 'Edit canceled',
152
- geofence_edited: 'Geofence edited sucessfully!',
153
- poi_delete_info: 'Do you want to delete POI ',
154
- poi_delete_title: 'Delete POI',
155
- poi_edited: 'POI edited sucessfully!',
156
- poi_deleted: 'POI has been deleted',
157
- poi_edit_title: 'Edit POI',
158
- poi_edit_name: 'Please enter the name of this POI...',
159
- searchGeofence: 'Search geofence',
160
- edit_geofence: 'Edit',
161
- delete_geofence: 'Delete'
162
- },
163
- report: {
164
- alarm: 'Alarm',
165
- distanceIn: 'Kms inside',
166
- distanceOut: 'Kms outside',
167
- closed: 'Door Closed',
168
- opened: 'Door Opened',
169
- sun: 'Sun',
170
- rain: 'Rain',
171
- temperature: 'Temperatura',
172
- select_vehicles: 'Select vehicles',
173
- select_vehicles_placeholder: 'Vehicles',
174
- select_geofences: 'Select geofences',
175
- select_geofences_placeholder: 'Geofences',
176
- select_period: 'Select period',
177
- period: 'Period',
178
- date_start: 'Start date',
179
- date_end: 'End date',
180
- generate_report: 'Generate report',
181
- validate_period: 'Por favor seleccione o período',
182
- user: 'User',
183
- titleTripReport: 'Trip Report',
184
- titleLocationReport: 'Locations Report',
185
- titleSpeedingReport: 'Overspeed Report',
186
- titleZoneReport: 'Zone Report',
187
- titleRefuelingReport: 'Refueling Report',
188
- titleFuelConsumptionReport: 'Fuel Consumption Report',
189
- titleFuelDropReport: 'Fuel Drop Report',
190
- titleEventsReport: 'Events Report',
191
- titleActivityReport: 'Activity Report',
192
- titleKmsReport: 'Kms Report',
193
- titleIdleReport: 'Idle Report',
194
- titleMachinesReport: 'Machines Report',
195
- titleStopReport: 'Stop Report',
196
- titleSensorReport: 'Sensor Report',
197
- from: 'From',
198
- to: 'to',
199
- headerStartAddress: 'Start address',
200
- headerDistance: 'Distance',
201
- headerDrivingTime: 'Driving Time',
202
- headerMaxSpeed: 'Max Speed',
203
- date: 'Date',
204
- start: 'Start',
205
- end: 'End',
206
- stopped: 'Stopped',
207
- yes: 'Yes',
208
- no: 'No',
209
- endAddress: 'Destination',
210
- tripTime: 'Duration',
211
- idleTime: 'Idle',
212
- stopTime: 'Stop',
213
- distance: 'Distance',
214
- speed: 'Speed',
215
- roadSpeedLimit: 'Road Speed Limit',
216
- overspeed: 'Alert On',
217
- avgSpeed: 'Avg Speed',
218
- maxSpeed: 'Max Speed',
219
- driver: 'Driver',
220
- group: 'Group',
221
- address: 'Address',
222
- ignition: 'Ignition',
223
- ignitionOn: 'On',
224
- ignitionOff: 'Off',
225
- enter: 'Enter',
226
- exit: 'Exit',
227
- geofence: 'Geofence',
228
- duration: 'Duration',
229
- vehicles: 'Vehicles',
230
- vehicle: 'Vehicle',
231
- licensePlate: 'License Plate',
232
- consumption: 'Consumption (L)',
233
- avg_consumption: 'Avg. Consumption (L/100)',
234
- avg_consumption_by_liters: 'Avg. Consumption (Kms/L)',
235
- odometer: 'Odometer',
236
- startOdometer: 'Start (Km)',
237
- endOdometer: 'End (Km)',
238
- spentFuel: 'Spent Fuel',
239
- engineHours: 'Use (H:m)',
240
- totalEngineHours: 'Total Use (H:m)',
241
- driverHours: 'Driving Time (H:m)',
242
- refueling: 'Refueling',
243
- fueldrop: 'Fuel Drop (L)',
244
- totalRefueled: 'Total Refueled',
245
- totalFuelDrops: 'Total Fuel Drops',
246
- totalFuelDropLiters: 'Total Fuel Lost',
247
- speedLimit: 'Speed Limit',
248
- eventType: 'Event',
249
- info: 'Information',
250
- event_ignitionOff: 'Ignition Off',
251
- event_ignitionOn: 'Ignition On',
252
- event_deviceOverspeed: 'Device Overspeed',
253
- event_geofenceEnter: 'Geofence Enter',
254
- event_geofenceExit: 'Geofence Exit',
255
- event_deviceFuelDrop: 'Fuel Drop',
256
- event_driverChanged: 'Driver Changed',
257
- event_sos: 'SOS',
258
- event_powerOn: 'Power TakeOff',
259
- event_powerCute: 'Power Cut',
260
- monday: 'Monday',
261
- tuesday: 'Tuesday',
262
- wednesday: 'Wednesday',
263
- thursday: 'Thursday',
264
- friday: 'Friday',
265
- saturday: 'Saturday',
266
- sunday: 'Sunday',
267
- weekDay: 'Week Day',
268
- unsubscribeTripReport: 'If you no longer wish to receive these emails, please go to %url% and remove the option "Trip report" in the settings in the "Reports" section.',
269
- unsubscribeLocationsReport: 'If you no longer wish to receive these emails, please go to %url% and remove the option "Locations report" in the settings in the "Reports" section.',
270
- unsubscribeSpeedingReport: 'If you no longer wish to receive these emails, please go to %url% and remove the option "Overspeed report" in the settings in the "Reports" section.',
271
- unsubscribeZoneReport: 'If you no longer wish to receive these emails, please go to %url% and remove the option "Zone report" in the settings in the "Reports" section.',
272
- unsubscribeRefuelingReport: 'If you no longer wish to receive these emails, please go to %url% and remove the option "Refueling report" in the settings in the "Reports" section.',
273
- unsubscribeFuelDropReport: 'If you no longer wish to receive these emails, please go to %url% and remove the option "Fuel drop report" in the settings in the "Reports" section.',
274
- minimumMinutes: 'Minimum time',
275
- maximumSpeed: 'Maximum speed',
276
- minutes: 'Minutes',
277
- zone: 'Zone',
278
- firstIn: 'First In',
279
- lastOut: 'Last Out',
280
- timeIn: 'Time In',
281
- timeOut: 'Time Out',
282
- maxTemp: 'Max Temp',
283
- minTemp: 'Min Temp',
284
- avgTemp: 'Avg Temp',
285
- total: 'Total'
286
- },
287
- layout: {
288
- deviceOnline: 'Device Online',
289
- deviceMoving: 'Device Moving',
290
- deviceStopped: 'Device Stopped',
291
- ignitionOff: 'Ignition Off',
292
- ignitionOn: 'Ignition On',
293
- deviceOverspeed: 'Device Overspeed',
294
- geofenceEnter: 'Geofence Enter',
295
- geofenceExit: 'Geofence Exit',
296
- deviceFuelDrop: 'Fuel Drop',
297
- driverChanged: 'Driver Changed',
298
- test: 'Test Notification',
299
- sos: 'Panic',
300
- powerOn: 'Power Take-Off',
301
- device: 'Device',
302
- time: 'Time',
303
- address: 'Address',
304
- driver: 'Driver',
305
- group: 'Group',
306
- in: 'in',
307
- fuelDropInfo: 'Fuel drop greater than '
308
- }
309
- }