diff --git a/index.html b/index.html index f602e7c..68644c9 100644 --- a/index.html +++ b/index.html @@ -927,10 +927,10 @@ Distance
- 0 + - km
@@ -943,54 +943,72 @@ Travel time- 0 + - minh
- 0 (0) + - kWh + | - + kWh
- 0 (0) + - m + | - + m
- (-)
++ - | + - +
diff --git a/js/control/TrackStats.js b/js/control/TrackStats.js index a3eb039..f2fdd2a 100644 --- a/js/control/TrackStats.js +++ b/js/control/TrackStats.js @@ -1,30 +1,61 @@ BR.TrackStats = L.Class.extend({ update: function(polyline, segments) { + if (segments.length == 0) { + $('#distance').html('-'); + $('#distance').attr('title', ''); + $('#ascend').html('-'); + $('#plainascend').html('-'); + $('#cost').html('-'); + $('#meancostfactor').html('-'); + $('#totaltime').html('-'); + $('#totalenergy').html('-'); + $('#meanenergy').html('-'); + return; + } + var stats = this.calcStats(polyline, segments), - length1 = L.Util.formatNum(stats.trackLength / 1000, 1), - length3 = L.Util.formatNum(stats.trackLength / 1000, 3), + length1 = L.Util.formatNum( + stats.trackLength / 1000, + 1 + ).toLocaleString(), + length3 = L.Util.formatNum( + stats.trackLength / 1000, + 3 + ).toLocaleString(), + formattedAscend = stats.filteredAscend.toLocaleString(), + formattedPlainAscend = stats.plainAscend.toLocaleString(), + formattedCost = stats.cost.toLocaleString(), meanCostFactor = stats.trackLength - ? L.Util.formatNum(stats.cost / stats.trackLength, 2) - : '', - formattedTime = L.Util.formatNum(stats.totalTime / 60, 1), - formattedEnergy = L.Util.formatNum(stats.totalEnergy / 3600000, 2), + ? L.Util.formatNum( + stats.cost / stats.trackLength, + 2 + ).toLocaleString() + : '0', + formattedTime = + Math.trunc(stats.totalTime / 3600) + + ':' + + ('0' + Math.trunc((stats.totalTime % 3600) / 60)).slice(-2), + formattedEnergy = L.Util.formatNum( + stats.totalEnergy / 3600000, + 2 + ).toLocaleString(), meanEnergy = stats.trackLength ? L.Util.formatNum( stats.totalEnergy / 36 / stats.trackLength, 2 - ) - : ''; + ).toLocaleString() + : '0'; $('#distance').html(length1); // alternative 3-digit format down to meters as tooltip $('#distance').attr('title', length3 + ' km'); - $('#ascend').html( - stats.filteredAscend + ' (' + stats.plainAscend + ')' - ); - $('#cost').html(stats.cost + ' (' + meanCostFactor + ')'); + $('#ascend').html(formattedAscend); + $('#plainascend').html(formattedPlainAscend); + $('#cost').html(formattedCost); + $('#meancostfactor').html(meanCostFactor); $('#totaltime').html(formattedTime); - $('#totalenergy').html(formattedEnergy + ' (' + meanEnergy + ')'); - + $('#totalenergy').html(formattedEnergy); + $('#meanenergy').html(meanEnergy); document.getElementById( 'totaltime' ).parentElement.parentElement.hidden = !stats.totalTime; diff --git a/locales/en.json b/locales/en.json index c5afd80..9f629a0 100644 --- a/locales/en.json +++ b/locales/en.json @@ -33,18 +33,21 @@ "trackname": "Name" }, "footer": { - "ascend": "Ascend (Plain ascend)", - "cost": "Cost (Mean cost factor)", + "ascend": "Ascend", + "plain-ascend": "Plain ascend", + "cost": "Cost", + "mean-cost-factor": "Mean cost factor", "distance": "Distance", - "kilometer": "kilometer", + "kilometer": "kilometers", "kilometer-abbrev": "km", - "kilowatthour": "kilowatt hour", + "kilowatthour": "kilowatt hours", "kilowatthour-abbrev": "kWh", - "meter": "meter", + "meter": "meters", "meter-abbrev": "m", - "minutes": "minutes", - "minutes-abbrev": "min", - "total-energy": "Total Energy (per 100km)", + "hours": "hours", + "hours-abbrev": "h", + "total-energy": "Total Energy", + "energy-per-100km": "Energy per 100 km", "travel-time": "Travel time" }, "layers": {