diff --git a/lib/websocket.js b/lib/websocket.js index d034bd3ec47..97c132ee0a1 100644 --- a/lib/websocket.js +++ b/lib/websocket.js @@ -27,6 +27,7 @@ var dir2Char = { var cgmData = [], treatmentData = [], + mbgData = [], patientData = []; function start ( ) { @@ -104,17 +105,26 @@ function update() { cgmData = []; treatmentData = []; + mbgData = []; var earliest_data = now - TWO_DAYS; var q = { find: {"date": {"$gte": earliest_data}} }; entries.list(q, function (err, results) { results.forEach(function(element, index, array) { if (element) { - var obj = {}; - obj.y = element.sgv; - obj.x = element.date; - obj.d = element.dateString; - obj.direction = directionToChar(element.direction); - cgmData.push(obj); + if (element.mbg) { + var obj = {}; + obj.y = element.mbg; + obj.x = element.date; + obj.d = element.dateString; + mbgData.push(obj); + } else if (element.sgv) { + var obj = {}; + obj.y = element.sgv; + obj.x = element.date; + obj.d = element.dateString; + obj.direction = directionToChar(element.direction); + cgmData.push(obj); + } } }); treatments.list(function (err, results) { @@ -143,11 +153,11 @@ function emitAlarm(alarmType) { function loadData() { console.log('running loadData'); - var mbg = []; var actual = [], actualCurrent, treatment = [], + mbg = [], errorCode; if (cgmData) { @@ -172,6 +182,13 @@ function loadData() { }); } + if (mbgData) { + mbg = mbgData.slice(); + mbg.sort(function(a, b) { + return a.x - b.x; + }); + } + if (actualCurrent && actualCurrent < 39) errorCode = actualCurrent; var actualLength = actual.length - 1; diff --git a/static/js/client.js b/static/js/client.js index 692ca87d130..86052014aad 100644 --- a/static/js/client.js +++ b/static/js/client.js @@ -260,7 +260,7 @@ } else { // if the brush comes back into the current time range then it should reset to the current time and sg var nowData = data.filter(function(d) { - return d.color != 'none'; + return d.color != 'none' && d.color != 'red'; }); nowData = [nowData[nowData.length - 2], nowData[nowData.length - 1]]; var prediction = predictAR(nowData);