luci-app-nlbwmon: Fixed incorrect period parameter/display
authorJo-Philipp Wich <jo@mein.io>
Fri, 1 Feb 2019 18:54:32 +0000 (13:54 -0500)
committerJo-Philipp Wich <jo@mein.io>
Fri, 15 Feb 2019 10:57:28 +0000 (11:57 +0100)
Switch from using the unreliable string data constructor syntax to
a more explicit year / month / day variant and pass through the
period value as-is in order to ensure that the proper start date
is requested from the backend.

This should fix issues with prevent the display of older data
periods in the nlbwmon gui.

Ref: https://github.com/jow-/nlbwmon/issues/25
Ref: https://github.com/openwrt/luci/pull/2496
Suggested-by: Aktanusa <chanam.geo@yahoo.com>
[squashed commits, add a more thorough commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
applications/luci-app-nlbwmon/htdocs/luci-static/resources/view/nlbw.js

index e5ae69b3a73ab2c278aed2e29267a3fe6cc122de..8a01b1db49babd53c18e5f155769644141faa9c2 100644 (file)
@@ -226,13 +226,15 @@ function renderPeriods()
        var sel = document.getElementById('nlbw.period');
 
        for (var e, i = trafficPeriods.length - 1; e = trafficPeriods[i]; i--) {
-               var d1 = new Date(e);
-               var d2, pd;
+               var ymd1 = e.split(/-/);
+               var d1 = new Date(+ymd1[0], +ymd1[1] - 1, +ymd1[2]);
+               var ymd2, d2, pd;
 
                if (i) {
-                       d2 = new Date(trafficPeriods[i - 1]);
+                       ymd2 = trafficPeriods[i - 1].split(/-/);
+                       d2 = new Date(+ymd2[0], +ymd2[1] - 1, +ymd2[2]);
                        d2.setDate(d2.getDate() - 1);
-                       pd = '%04d-%02d-%02d'.format(d1.getFullYear(), d1.getMonth() + 1, d1.getDate());
+                       pd = e;
                }
                else {
                        d2 = new Date();