diff options
| author | Wild Stray <wildstray@users.noreply.github.com> | 2018-08-02 00:21:02 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-08-02 00:21:02 +0000 |
| commit | f8110d5c40861ee1d0b1ee2b1f30354fdb2dd381 (patch) | |
| tree | 0a695e4f3b14d68018f5a87f4653d63c475091db | |
| parent | c9d0b3fe9d5f9eaa0eb170bb03e261c1357796d3 (diff) | |
| download | tplink-energy-monitor-f8110d5c40861ee1d0b1ee2b1f30354fdb2dd381.tar.xz tplink-energy-monitor-f8110d5c40861ee1d0b1ee2b1f30354fdb2dd381.zip | |
Update dash.js
| -rw-r--r-- | public/javascripts/dash.js | 52 |
1 files changed, 26 insertions, 26 deletions
diff --git a/public/javascripts/dash.js b/public/javascripts/dash.js index 9335229..489cd21 100644 --- a/public/javascripts/dash.js +++ b/public/javascripts/dash.js @@ -5,23 +5,23 @@ var dash = { realtimeTrendChart: null, realtimeTrendLastSample: 0, - dailyUsageChart: null, - monthlyUsageChart: null, - - init: function(deviceId) { - this.deviceId = deviceId; - - if (this.deviceId) { - $('.' + deviceId).addClass('active'); - } - - this.initRealtimeGauge(); - this.initRealtimeTrendChart(); - this.initDailyUsageChart(); - this.initMonthlyUsageChart(); - - this.initWsConnection(); - }, + dailyUsageChart: null, + monthlyUsageChart: null, + + init: function(deviceId) { + this.deviceId = deviceId; + + if (this.deviceId) { + $('.' + deviceId).addClass('active'); + } + + this.initRealtimeGauge(); + this.initRealtimeTrendChart(); + this.initDailyUsageChart(); + this.initMonthlyUsageChart(); + + this.initWsConnection(); + }, initWsConnection: function() { var wsUri = 'ws://' + window.location.host + '/ws' @@ -212,9 +212,9 @@ var dash = { refreshRealtimeDisplay: function(realtime) { - var power = Math.round((realtime.power_mw) ? (realtime.power_mw/1000) : realtime.power); - var current = ((realtime.current_ma) ? (realtime.current_ma/1000) : realtime.current).toFixed(2); - var voltage = Math.round((realtime.voltage_mv) ? (realtime.voltage_mv/1000) : realtime.voltage); + var power = Math.round(('power_mw' in realtime) ? (realtime.power_mw/1000) : realtime.power); + var current = (('current_ma' in realtime) ? (realtime.current_ma/1000) : realtime.current).toFixed(2); + var voltage = Math.round(('voltage_mv' in realtime) ? (realtime.voltage_mv/1000) : realtime.voltage); this.realtimeGauge.set(power); // might switch to Vue.js if this gets tedious @@ -240,7 +240,7 @@ var dash = { dash.dailyUsageChart.data.labels.push(day.format('MMM D')); dash.dailyUsageChart.data.datasets.forEach(function(dataset) { - dataset.data.push((entry.energy_wh) ? (entry.energy_wh/1000) : entry.energy); + dataset.data.push(('energy_wh' in entry) ? (entry.energy_wh/1000) : entry.energy); }); }); @@ -254,10 +254,10 @@ var dash = { return d.day === moment().date() && d.month === (moment().month()+1) && d.year === moment().year() }); - var energy = (dailyTotal.energy_wh) ? (dailyTotal.energy_wh/1000) : dailyTotal.energy + var energy = ('energy_wh' in dailyTotal) ? (dailyTotal.energy_wh/1000) : dailyTotal.energy $("#total-day").text(energy.toFixed(2)); - var total = usageData.reduce(function(t, d) {return t + ((d.energy_wh) ? (d.energy_wh/1000) : d.energy)}, 0); + var total = usageData.reduce(function(t, d) {return t + (('energy_wh' in d) ? (d.energy_wh/1000) : d.energy)}, 0); var avg = total/usageData.length; console @@ -279,7 +279,7 @@ var dash = { dash.monthlyUsageChart.data.labels.push(month.format('MMM')); dash.monthlyUsageChart.data.datasets.forEach(function(dataset) { - dataset.data.push((entry.energy_wh) ? (entry.energy_wh/1000) : entry.energy); + dataset.data.push(('energy_wh' in entry) ? (entry.energy_wh/1000) : entry.energy); }); }); @@ -292,10 +292,10 @@ var dash = { var monthlyTotal = usageData.find(function(m) { return m.month === (moment().month()+1) && m.year === moment().year() }); - var energy = (monthlyTotal.energy_wh) ? (monthlyTotal.energy_wh/1000) : monthlyTotal.energy + var energy = ('energy_wh' in monthlyTotal) ? (monthlyTotal.energy_wh/1000) : monthlyTotal.energy $("#total-month").text(energy.toFixed(2)); - var total = usageData.reduce(function(t, m) {return t + ((m.energy_wh) ? (m.energy_wh/1000) : m.energy)}, 0); + var total = usageData.reduce(function(t, m) {return t + (('energy_wh' in m) ? (m.energy_wh/1000) : m.energy)}, 0); var avg = total/usageData.length; $("#avg-month").text(avg.toFixed(2)); |