summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYves Fischer <yvesf-git@xapek.org>2013-04-18 19:55:37 +0200
committerYves Fischer <yvesf-git@xapek.org>2013-04-18 19:55:37 +0200
commitc2d48c0082cdeb38eff3a3f8eb68ae7758fa4439 (patch)
treea73982922fc06779a2f630e7ead2487f90b921e1
parent87f4134201f0a0840415aab531e32ca714bc7a36 (diff)
downloadebus-alt-c2d48c0082cdeb38eff3a3f8eb68ae7758fa4439.tar.gz
ebus-alt-c2d48c0082cdeb38eff3a3f8eb68ae7758fa4439.zip
fix timezone handling in js
-rw-r--r--datastore-leveldb/bin/insert_testdata.py7
-rw-r--r--datastore-leveldb/wwwroot/src/ebus.js24
2 files changed, 18 insertions, 13 deletions
diff --git a/datastore-leveldb/bin/insert_testdata.py b/datastore-leveldb/bin/insert_testdata.py
index d1fd74a..6ea1180 100644
--- a/datastore-leveldb/bin/insert_testdata.py
+++ b/datastore-leveldb/bin/insert_testdata.py
@@ -10,7 +10,12 @@ s = ["heizkreisregler9.solarDaten.tempKollektor",
MINUTE = 1000 * 60
DAY = MINUTE * 60 * 24
NOW = long(time.time()*1000)
-for i in range(NOW-14*DAY, NOW, MINUTE):
+
+FROM=NOW-DAY*30
+TO=NOW
+STEP=MINUTE
+
+for i in range(FROM,TO,STEP):
for j,sensor in zip(range(len(s)),s):
x = (float(i)/DAY)+j
requests.put("http://localhost:8080/api/value/"+sensor+"/"+str(i),
diff --git a/datastore-leveldb/wwwroot/src/ebus.js b/datastore-leveldb/wwwroot/src/ebus.js
index 126db7d..ce4b876 100644
--- a/datastore-leveldb/wwwroot/src/ebus.js
+++ b/datastore-leveldb/wwwroot/src/ebus.js
@@ -9,8 +9,8 @@ d.week = 7 * d.day;
d.month = 30.5 * d.day;
d.now = new Date().getTime();
-var timeToUTC = function(d) { return d - new Date().getTimezoneOffset() * 60 * 1000; }
-var timeToLocal = function(d) { return d + new Date().getTimezoneOffset() * 60 * 1000; }
+var timeToUTC = function(d) { return d + new Date().getTimezoneOffset() * 60 * 1000; }
+var timeToLocal = function(d) { return d - new Date().getTimezoneOffset() * 60 * 1000; }
$(document).ready(function(){
var from = d.now - 1*d.day;
@@ -85,7 +85,7 @@ $(document).ready(function(){
plotDetail = $.plot($("#ebusgraph"),
datasetDetail,
{
- xaxis: { mode: "time", min: timeToUTC(from), max:timeToUTC(to) },
+ xaxis: { mode: "time", min: timeToLocal(from), max:timeToLocal(to) },
yaxis: { min: -16, max: 100 },
legend: { show : true}
});
@@ -99,8 +99,8 @@ $(document).ready(function(){
lines: { show: true, lineWidth: 1 },
shadowSize: 0
},
- xaxis: { mode: "time", min: timeToUTC(fromOverview), max:timeToUTC(toOverview) },
- yaxis: { ticks: [], min: -26, max: 100, autoscaleMargin: 0.1 },
+ xaxis: { mode: "time", min: timeToLocal(fromOverview), max:timeToLocal(toOverview)},
+ yaxis: { ticks: [], min: -26, max: 100, autoscaleMargin: 0.1 },
legend: { show: false },
selection: { mode: "x" }
});
@@ -119,12 +119,12 @@ $(document).ready(function(){
unplotSensorOverview(sensorname);
};
var plotSensorDetail = function(sensorConfig) {
- $.getJSON("/api/range/"+escape(sensorConfig.sensorname)+"/"+timeToLocal(from)+"/"+timeToLocal(to)+"/800",
+ $.getJSON("/api/range/"+escape(sensorConfig.sensorname)+"/"+from+"/"+to+"/800",
function(response) {
console.log("foo");
if (!response.error) {
response.data = response.data.map(function(d) {
- return [ timeToUTC(d[0]), d[1] ];
+ return [ timeToLocal(d[0]), d[1] ];
});
if (sensorConfig.mapFunc) {
response.data = response.data.map( sensorConfig.mapFunc )
@@ -151,11 +151,11 @@ $(document).ready(function(){
};
var plotSensorOverview = function(sensorConfig) {
- $.getJSON("api/range/"+escape(sensorConfig.sensorname)+"/"+timeToLocal(fromOverview)+"/"+timeToLocal(toOverview) + "/800",
+ $.getJSON("api/range/"+escape(sensorConfig.sensorname)+"/"+fromOverview+"/"+toOverview+ "/800",
function(response) {
if (!response.error) {
response.data = response.data.map(function(d) {
- return [ timeToUTC(d[0]), d[1] ];
+ return [ timeToLocal(d[0]), d[1] ];
});
if (sensorConfig.mapFunc) {
response.data = response.data.map( sensorConfig.mapFunc)
@@ -182,15 +182,15 @@ $(document).ready(function(){
$("#overview").bind("plotselected", function (event, ranges) {
range_from = Math.round(ranges.xaxis.from);
- range_to = Math.round(ranges.xaxis.to);
+ range_to = Math.round(ranges.xaxis.to);
// max selection range
if (range_to - range_from > d.month) {
// reset selection
plotOverview.setSelection({xaxis: {'from': from, 'to': to}}, true);
return;
} else {
- from = timeToLocal( range_from );
- to = timeToLocal( range_to );
+ from = timeToUTC(range_from);
+ to = timeToUTC(range_to);
}
sensors = [];
for (elem in datasetOverview) {