From 705a5d7a1b187bb08d4df00f1ad764e78600ac60 Mon Sep 17 00:00:00 2001 From: Gordon Williams Date: Fri, 13 Jan 2023 12:03:23 +0000 Subject: [PATCH] recorder 0.21: Speed report now uses speed units from locale --- apps/recorder/ChangeLog | 1 + apps/recorder/app.js | 9 +++++++-- apps/recorder/metadata.json | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/apps/recorder/ChangeLog b/apps/recorder/ChangeLog index a4d0b7e88..c4d1fa8c1 100644 --- a/apps/recorder/ChangeLog +++ b/apps/recorder/ChangeLog @@ -24,3 +24,4 @@ 0.18: Improve widget load speed, allow currently recording track to be plotted in openstmap 0.19: Fix track plotting code 0.20: Automatic translation of some more strings. +0.21: Speed report now uses speed units from locale diff --git a/apps/recorder/app.js b/apps/recorder/app.js index 8dcc4c3ed..8ac3ff627 100644 --- a/apps/recorder/app.js +++ b/apps/recorder/app.js @@ -348,7 +348,12 @@ function viewTrack(filename, info) { infc[i]++; } } else if (style=="Speed") { - title = /*LANG*/"Speed (m/s)"; + // use locate to work out units + var localeStr = require("locale").speed(1,5); // get what 1kph equates to + let units = localeStr.replace(/[0-9.]*/,""); + var factor = parseFloat(localeStr)*3.6; // m/sec to whatever out units are + // title + title = /*LANG*/"Speed"+` (${units})`; var latIdx = info.fields.indexOf("Latitude"); var lonIdx = info.fields.indexOf("Longitude"); // skip until we find our first data @@ -381,7 +386,7 @@ function viewTrack(filename, info) { } else throw new Error("Unknown type "+style); var min=100000,max=-100000; for (var i=0;i0) infn[i]/=infc[i]; + if (infc[i]>0) infn[i]=factor*infn[i]/infc[i]; var n = infn[i]; if (n>max) max=n; if (n