@@ -1279,7 +1279,7 @@ var app = {}, browserSettings = {}, browserStorage = $.localStorage;
12791279 var BG_MIN = scaleBg ( 36 ) ;
12801280 var BG_MAX = scaleBg ( 400 ) ;
12811281 if ( typeof predict_hr === 'undefined' ) {
1282- var predict_hr = 4 ;
1282+ predict_hr = profile . dia ;
12831283 }
12841284 var dt = time . getTime ( ) ;
12851285 var predictedColor = 'purple' ;
@@ -1547,38 +1547,37 @@ var app = {}, browserSettings = {}, browserStorage = $.localStorage;
15471547 function iobCalc ( treatment , time ) {
15481548
15491549 var dia = profile . dia ;
1550- if ( dia == 3 ) {
1551- var peak = 75 ;
1552- } else {
1553- console . warn ( 'DIA of ' + dia + 'not supported' ) ;
1554- }
1550+ var scaleFactor = 3.0 / dia ;
1551+ var peak = 75 ;
15551552 var sens = profile . sens ;
1556- if ( typeof time === 'undefined' ) {
1557- var time = new Date ( ) ;
1553+ var iobContrib , activityContrib ;
1554+ var t = time ;
1555+ if ( typeof t === 'undefined' ) {
1556+ t = new Date ( ) ;
15581557 }
15591558
15601559 if ( treatment . insulin ) {
15611560 var bolusTime = new Date ( treatment . created_at ) ;
1562- var minAgo = ( time - bolusTime ) / 1000 / 60 ;
1561+ var minAgo = scaleFactor * ( t - bolusTime ) / 1000 / 60 ;
15631562
15641563 if ( minAgo < 0 ) {
1565- var iobContrib = 0 ;
1566- var activityContrib = 0 ;
1564+ iobContrib = 0 ;
1565+ activityContrib = 0 ;
15671566 }
15681567 if ( minAgo < peak ) {
15691568 var x = minAgo / 5 + 1 ;
1570- var iobContrib = treatment . insulin * ( 1 - 0.001852 * x * x + 0.001852 * x ) ;
1571- var activityContrib = sens * treatment . insulin * ( 2 / dia / 60 / peak ) * minAgo ;
1569+ iobContrib = treatment . insulin * ( 1 - 0.001852 * x * x + 0.001852 * x ) ;
1570+ activityContrib = sens * treatment . insulin * ( 2 / dia / 60 / peak ) * minAgo ;
15721571
15731572 }
15741573 else if ( minAgo < 180 ) {
15751574 var x = ( minAgo - 75 ) / 5 ;
1576- var iobContrib = treatment . insulin * ( 0.001323 * x * x - .054233 * x + .55556 ) ;
1577- var activityContrib = sens * treatment . insulin * ( 2 / dia / 60 - ( minAgo - peak ) * 2 / dia / 60 / ( 60 * dia - peak ) ) ;
1575+ iobContrib = treatment . insulin * ( 0.001323 * x * x - .054233 * x + .55556 ) ;
1576+ activityContrib = sens * treatment . insulin * ( 2 / dia / 60 - ( minAgo - peak ) * 2 / dia / 60 / ( 60 * dia - peak ) ) ;
15781577 }
15791578 else {
1580- var iobContrib = 0 ;
1581- var activityContrib = 0 ;
1579+ iobContrib = 0 ;
1580+ activityContrib = 0 ;
15821581 }
15831582 return {
15841583 iobContrib : iobContrib ,
0 commit comments