Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update #1

Merged
merged 119 commits into from
Jan 11, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
119 commits
Select commit Hold shift + click to select a range
71d9852
Merge pull request #2 from nightscout/dev
boysim Aug 27, 2017
ddce2b9
decrease timeouts to detect regressions faster in future
PieterGit Sep 14, 2017
2676cee
Admintools and profileeditor test fails with 20 sec timeout. Increasi…
PieterGit Sep 14, 2017
2caa67d
optimize travis tests. see if 5 sec per test is enough (in stead of 5…
PieterGit Sep 14, 2017
ec06d5d
the following tests don't complete in 5 sec. increase timeout to 25 sec.
PieterGit Sep 14, 2017
2cadcb0
increase profileeditor tests to 40 sec
PieterGit Sep 14, 2017
2f46e05
hasauth.test.js fails with 25 sec. increasing to 40 sec
PieterGit Sep 14, 2017
08f3034
Merge pull request #3 from nightscout/dev
boysim Sep 24, 2017
bf82c43
Create issue_template.md
sulkaharo Sep 26, 2017
ca39c92
add ZT (zero temp) prediction line
scottleibrand Oct 9, 2017
c17c004
package-lock.json
scottleibrand Oct 9, 2017
15702d7
display ZT PredBGs, and forecast tooltips
scottleibrand Oct 9, 2017
0d222d4
remove extra-big tooltip target around treatments; reduce font sizes
scottleibrand Oct 9, 2017
08e4aa9
make R3/R4 elements into very short arcs to reposition labels
scottleibrand Oct 9, 2017
0404f0d
filter to only use actual SGV's (not rawbg's) to set the view window
scottleibrand Oct 9, 2017
3b33f2f
remove console.log
scottleibrand Oct 9, 2017
1c387b8
Update dev version to 0.10.2
sulkaharo Oct 15, 2017
349bc02
exclude package-lock.json from git
scottleibrand Oct 15, 2017
4ba9b3e
Merge branch 'dev' into ZT
scottleibrand Oct 15, 2017
ec25130
add package-lock.json to .gitignore to avoid merge conflicts
scottleibrand Oct 15, 2017
ae5a5d4
comments
scottleibrand Oct 15, 2017
defcae7
revert font change
scottleibrand Oct 15, 2017
68af094
Adding some test coverage for /lib/client/renderer.js
christopher-fredregill Oct 15, 2017
f13b6af
send foods via websockets
MilosKozak Oct 16, 2017
3457de5
use websockeets instead of rest api for food
MilosKozak Oct 16, 2017
257371f
add fat,protein,energy to food editor
MilosKozak Oct 16, 2017
94d21d2
Re-enable source maps
sulkaharo Oct 16, 2017
0d90008
Merge pull request #2924 from MilosKozak/dev
MilosKozak Oct 16, 2017
6c86a6d
replace 3HR with 2HR and (default) 4HR views
scottleibrand Oct 17, 2017
e433cc8
only show focusHours' worth of predictions; strip leading zero from b…
scottleibrand Oct 17, 2017
38d3539
fix spelling of focusRangeMS
scottleibrand Oct 17, 2017
e60ff3a
change default back to 3HR
scottleibrand Oct 17, 2017
fb4e74e
try larger label font: 35 instead of 25 (vs. 40)
scottleibrand Oct 17, 2017
33f16f4
allow treatment bubbles to scale up past 1U/20g size
scottleibrand Oct 18, 2017
fa7c74b
change font size back to default in this branch
scottleibrand Oct 18, 2017
7a6fda0
change Bolus Snooze to Bolus IOB
scottleibrand Oct 19, 2017
2d87384
change Bolus Snooze to Bolus IOB
scottleibrand Oct 19, 2017
e499e9b
Merge branch 'ZT' into rendering
scottleibrand Oct 19, 2017
8f66f09
back to smaller treatment dots
scottleibrand Oct 20, 2017
532d766
handle AAPS profile switches well
MilosKozak Oct 20, 2017
ddfd790
Merge pull request #2960 from MilosKozak/dev
MilosKozak Oct 20, 2017
3a7dc58
Fix URLs of [mongostring] and [autoconfigure]
schmitzn Oct 20, 2017
de2ff49
Merge pull request #2920 from christopher-fredregill/wip/increase_cov…
sulkaharo Oct 20, 2017
62f352c
update nodejs to 8.7.0 and npm update
PieterGit Oct 21, 2017
3995a26
do not upload temporary profiles from store
MilosKozak Oct 21, 2017
0c4ce20
Merge pull request #2968 from MilosKozak/dev
MilosKozak Oct 21, 2017
45d4853
Merge branch '201710_node870' of https://github.com/PieterGit/cgm-rem…
PieterGit Oct 21, 2017
64913d3
also update nodjes used by travis from 8.5.0 to 8.7.0
PieterGit Oct 21, 2017
43d6797
Upgrade travis node. Merge branch '201710_node870' of https://github.…
PieterGit Oct 21, 2017
2b5c660
Increase timeout for careportal.test.js and pluginbase.test from 25 t…
PieterGit Oct 21, 2017
c0388ab
increase timeout of admintools.test.js from 25 to 30 seconds
PieterGit Oct 21, 2017
cbee7f2
pluginbase.test.js fails with 30 sec. upping to 40 sec timeout
PieterGit Oct 22, 2017
f51a24f
update to nodejs 8.8.0 and npm update
PieterGit Oct 25, 2017
ccda13e
Update to node js 8.8.0 and npm update. Merge branch '201710_node870'…
PieterGit Oct 25, 2017
68536d9
npm update with nodejs 8.8.0
PieterGit Oct 25, 2017
ca7972a
Merge pull request #2967 from PieterGit/201710_node870
sulkaharo Oct 25, 2017
c6af0aa
Merge pull request #2800 from PieterGit/travis_improve
sulkaharo Oct 25, 2017
a869e3c
Update version, remove package-lock.json
sulkaharo Oct 25, 2017
dd1cc9c
upgrade node in .nvmrc from 8.1.4 to 8.8.0
PieterGit Oct 25, 2017
9c403e5
set sudo back to required (used for docker and mongodb commands)
PieterGit Oct 25, 2017
9b77bc5
Merge pull request #2982 from PieterGit/travis_fix
sulkaharo Oct 25, 2017
9c971f0
more node upgrade stuff
PieterGit Oct 25, 2017
56092f3
Update README.md
sulkaharo Oct 25, 2017
1e20d83
Merge pull request #2983 from PieterGit/travis_fix2
sulkaharo Oct 25, 2017
f6f5549
Fix a bug with time comparison on if-modified-since support for treat…
sulkaharo Oct 25, 2017
0efaffa
Merge branch 'dev' of github.com:nightscout/cgm-remote-monitor into dev
sulkaharo Oct 25, 2017
c16ad7b
Check both created_at and timestamp fields for treatments in if-modif…
sulkaharo Oct 25, 2017
3867bec
Add Total daily pasal to profile editor.
alimhassam Oct 15, 2017
dd5c125
Bump 8.8.0 to 8.8.1
sulkaharo Oct 26, 2017
55c0a38
Update to node 8.8.1. Merge branch 'dev' of https://github.com/nights…
Oct 27, 2017
3f01d32
cherry pick 33f16f4439262da2ec74c196bfa7f244910bb6fe
scottleibrand Oct 18, 2017
d2a8d50
merge rendering
scottleibrand Oct 17, 2017
4a0c508
Revert "add package-lock.json to .gitignore to avoid merge conflicts"
Oct 27, 2017
2f33b74
fix merge errors, up version and fix test
PieterGit Oct 27, 2017
edbf22b
bring back the ' U' for non-SMB's (> 1U insulin and with carbs)
PieterGit Oct 27, 2017
8f87490
Revert "bring back the ' U' for non-SMB's (> 1U insulin and with carbs)"
PieterGit Oct 27, 2017
4a3c1eb
fix typo foucusRangeMS to focusRangeMS in lib/client/chart.js
PieterGit Oct 27, 2017
bea449b
for some reasone change from foucusRangeMS to focusRangeMS was not im…
PieterGit Oct 27, 2017
0c171d6
bring back the ' U' for non-SMB's (> 1U insulin and with carbs)
PieterGit Oct 27, 2017
1fa753d
More test coverage for /lib/client/renderer.js (highlightBrushPoints)
christopher-fredregill Oct 26, 2017
5b0d683
Merge pull request #4 from nightscout/dev
boysim Oct 31, 2017
6607729
Merge remote-tracking branch 'origin/dev' into rendering
scottleibrand Oct 31, 2017
8ebfd94
Merge branch '201710_pieterg_zt' of https://github.com/PieterGit/cgm-…
scottleibrand Oct 31, 2017
d96d772
Merge branch 'PieterGit-201710_pieterg_zt' into rendering
scottleibrand Oct 31, 2017
9701c03
display Sensitivity Ratio in OpenAPS pill
scottleibrand Nov 1, 2017
6f83031
add comma
scottleibrand Nov 1, 2017
46e501b
Merge pull request #2921 from alimhassam/profileTotalBasal
sulkaharo Nov 1, 2017
23410f0
Merge pull request #2997 from christopher-fredregill/wip/increase_cov…
sulkaharo Nov 1, 2017
dc3611d
Fix SAGE pill test failing due to summer time change
sulkaharo Nov 1, 2017
5f57778
Merge pull request #2966 from schmitzn/fix-urls
sulkaharo Nov 1, 2017
9e0cc8b
Merge pull request #2926 from nightscout/rendering
sulkaharo Nov 1, 2017
0c1aff4
Merge pull request #3011 from nightscout/issue_template
sulkaharo Nov 1, 2017
63223e8
Upgrading to 8.9.0 LTS (first LTS release!) and also let travis run o…
PieterGit Nov 3, 2017
858158c
Drop building with nodejs 9.0.0 for now. Once NodeJS v10 almost appea…
PieterGit Nov 3, 2017
1fb52f1
Update German translation
schmitzn Nov 6, 2017
8925bad
Update German translation
schmitzn Nov 7, 2017
811ed3f
Merge pull request #3026 from schmitzn/update-german-translation
sulkaharo Nov 7, 2017
27c0fc3
Merge pull request #3013 from PieterGit/201711_node890_node900
sulkaharo Nov 7, 2017
fc88488
added dutch translations
boysim Nov 8, 2017
50df514
Merge pull request #3033 from boysim/dev
sulkaharo Nov 8, 2017
56d8834
Update Loop pill RSSI (#3034)
dm61 Nov 8, 2017
2f67610
Upgrade to node 8.9.1 and npm update and some dutch translation fixes…
PieterGit Nov 13, 2017
d0f94d9
deviceInfo.recent null check (#3048)
scottleibrand Nov 28, 2017
2f99f87
add root mean squared out of range metric (#3045)
jakepusateri Nov 28, 2017
68a44fc
Add recommended bolus and eventual BG to Loop pill (#3040)
dm61 Nov 28, 2017
6dc5b55
Update bgclock.html (#3039)
danielharrelson Nov 28, 2017
07a2ff7
Update version, improvements to glucose distribution filtering
sulkaharo Nov 28, 2017
eb4726d
fix reports (#3078)
MilosKozak Nov 28, 2017
7d32250
Shrinkwrap update
sulkaharo Nov 28, 2017
a4d307f
Downgrade npm to fix deployment issues
sulkaharo Nov 28, 2017
55f8fa5
Smarter formatting based on amount of data (#3086)
sulkaharo Nov 29, 2017
8dd4d42
better rendering of treatments with duration (#3082)
MilosKozak Nov 29, 2017
26dd858
* Update Finnish localization
sulkaharo Dec 1, 2017
5692d88
24 hour clock support for bgclock.html
sulkaharo Dec 1, 2017
881d3c6
Merge pull request #2981 from nightscout/dev
sulkaharo Dec 1, 2017
a03683b
Going down to 8.9.0 for Azure
sulkaharo Dec 2, 2017
50a01b4
Alternate versions in package.json
sulkaharo Dec 2, 2017
fa21ee3
One final change that should run on both Heroku and Azure
sulkaharo Dec 2, 2017
75e195a
Merge branch 'dev'
sulkaharo Dec 2, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ node_modules/

bundle/bundle.out.js

.vscode/
.idea/
*.iml
my.env
Expand Down
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
8.1.4
8.9.1
3 changes: 2 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
language: node_js
sudo: required
dist: trusty
node_js:
- "8.5.0"
- "8.9.1"
matrix:
fast_finish: true
services:
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile.example
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM node:8.5.0
FROM node:8.9.1

MAINTAINER Nightscout Contributors

Expand Down
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ all: test

coverage:
NODE_ENV=test ${MONGO_SETTINGS} \
${ISTANBUL} cover ${MOCHA} -- --timeout 30000 -R tap ${TESTS}
${ISTANBUL} cover ${MOCHA} -- --timeout 15000 -R tap ${TESTS}

report:
test -f ${ANALYZED} && \
Expand All @@ -45,7 +45,7 @@ test:

travis:
NODE_ENV=test ${MONGO_SETTINGS} \
${ISTANBUL} cover ${MOCHA} --report lcovonly -- --timeout 50000 -R tap ${TESTS}
${ISTANBUL} cover ${MOCHA} --report lcovonly -- --timeout 5000 -R tap ${TESTS}

docker_release:
# Get the version from the package.json file
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,24 +105,24 @@ Community maintained fork of the

Requirements:

- [Node.js](http://nodejs.org/)
- [Node.js](http://nodejs.org/) 8.9.0 LTS (use [Install instructions for Node](https://nodejs.org/en/download/package-manager/) or `setup.sh`)

Clone this repo then install dependencies into the root of the project:

```bash
$ npm install
```

If deploying the software to Microsoft Azure, you must set *WEBSITE_NODE_DEFAULT_VERSION* in the app settings to *8.5.0* or the site deployment will fail. Other hosting environments do not require this setting.
If deploying the software to Microsoft Azure, you must set *WEBSITE_NODE_DEFAULT_VERSION* in the app settings to *8.9.0* **before** you deploy the latest Nightscout or the site deployment will likely fail. Other hosting environments do not require this setting.

# Usage

The data being uploaded from the server to the client is from a
MongoDB server such as [mongolab][mongodb].

[mongodb]: https://mongolab.com
[autoconfigure]: http://nightscout.github.io/pages/configure/
[mongostring]: http://nightscout.github.io/pages/mongostring/
[autoconfigure]: https://nightscout.github.io/pages/configure/
[mongostring]: https://nightscout.github.io/pages/mongostring/
[update-fork]: http://nightscout.github.io/pages/update-fork/

## Updating my version?
Expand Down
2 changes: 1 addition & 1 deletion bower.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "nightscout",
"version": "0.10.1-release-20171016",
"version": "0.10.2-release-20171201",
"dependencies": {
"colorbrewer": "~1.0.0",
"jQuery-Storage-API": "~1.7.2",
Expand Down
11 changes: 11 additions & 0 deletions docs/issue_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
Please include the following information with your bug report:

Is this a new bug with the latest release, have you seen this earlier?

Which device / browser version was used to reproduce the bug?

Does this happen every time you launch Nightscout, or sometimes?

Steps how to reproduce (if you can’t reproduce the issue, please don’t report the issue / if we can't reproduce the bug, we can't fix)

Please include 1 or more screenshots of the issue appearing, ideally with an annotation on what's wrong
2 changes: 1 addition & 1 deletion lib/api/entries/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ function configure (app, wares, ctx) {
var ifModifiedSince = req.get('If-Modified-Since');
if (!ifModifiedSince) { return next(); }

if (lastEntryDate <= new Date(ifModifiedSince)) {
if (lastEntryDate.getTime() <= new Date(ifModifiedSince).getTime()) {
res.status(304).send({status:304, message: 'Not modified', type:'internal'});
return;
}
Expand Down
17 changes: 14 additions & 3 deletions lib/api/treatments/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

var _ = require('lodash');
var consts = require('../../constants');
var moment = require('moment');

function configure(app, wares, ctx) {
var express = require('express')
Expand Down Expand Up @@ -39,16 +40,26 @@ function configure(app, wares, ctx) {
t.carbs = Number(t.carbs);
t.insulin = Number(t.insulin);

var d2 = new Date(t.timestamp);
var d2 = null;

if (d1 == null || d2 > d1) {
if (t.hasOwnProperty('created_at')) {
d2 = new Date(t.created_at);
} else {
if (t.hasOwnProperty('timestamp')) {
d2 = new Date(t.timestamp);
}
}

if (d2 == null) { return; }

if (d1 == null || d2.getTime() > d1.getTime()) {
d1 = d2;
}
});

if (!_.isNil(d1)) res.setHeader('Last-Modified', d1.toUTCString());

if (ifModifiedSince && d1 <= new Date(ifModifiedSince)) {
if (ifModifiedSince && d1.getTime() <= moment(ifModifiedSince).valueOf()) {
res.status(304).send({
status: 304
, message: 'Not modified'
Expand Down
54 changes: 27 additions & 27 deletions lib/client/boluscalc.js
Original file line number Diff line number Diff line change
Expand Up @@ -621,41 +621,41 @@ function init(client, $) {
boluscalc.loadFoodDatabase = function loadFoodDatabase(event, callback) {
categories = [];
foodlist = [];
$.ajax('/api/v1/food/regular.json', {
headers: client.headers()
, success: function (records) {
records.forEach(function (r) {
foodlist.push(r);
if (r.category && !categories[r.category]) {
categories[r.category] = {};
}
if (r.category && r.subcategory) {
categories[r.category][r.subcategory] = true;
}
});
databaseloaded = true;
console.log('Food database loaded');
fillForm();
var records = client.sbx.data.food || [];
records.forEach(function (r) {
if (r.type == 'food') {
foodlist.push(r);
if (r.category && !categories[r.category]) {
categories[r.category] = {};
}
if (r.category && r.subcategory) {
categories[r.category][r.subcategory] = true;
}
}
}).done(function() { if (callback) { callback(); } });
});
databaseloaded = true;
console.log('Food database loaded');
fillForm();
maybePrevent(event);
if (callback) { callback(); }
};

boluscalc.loadFoodQuickpicks = function loadFoodQuickpicks( ) {
// Load quickpicks
$.ajax('/api/v1/food/quickpicks.json', {
headers: client.headers()
, success: function (records) {
quickpicks = records;
$('#bc_quickpick').empty().append('<option value="-1">' + translate('(none)') + '</option>');
for (var i=0; i<records.length; i++) {
var r = records[i];
$('#bc_quickpick').append('<option value="' + i +'">' + r.name + ' (' + r.carbs + ' g)</option>');
};
$('#bc_quickpick').val(-1);
$('#bc_quickpick').change(quickpickChange);
quickpicks = [];
var records = client.sbx.data.food || [];
records.forEach(function (r) {
if (r.type == 'quickpick') {
quickpicks.push(r);
}
});
$('#bc_quickpick').empty().append('<option value="-1">' + translate('(none)') + '</option>');
for (var i=0; i<records.length; i++) {
var r = records[i];
$('#bc_quickpick').append('<option value="' + i +'">' + r.name + ' (' + r.carbs + ' g)</option>');
};
$('#bc_quickpick').val(-1);
$('#bc_quickpick').change(quickpickChange);
};

function fillForm(event) {
Expand Down
12 changes: 9 additions & 3 deletions lib/client/chart.js
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,15 @@ function init (client, d3, $) {
var contextYDomain = [utils.scaleMgdl(36), utils.scaleMgdl(420)];

function dynamicDomain() {
var mult = 1.3
// allow y-axis to extend all the way to the top of the basal area, but leave room to display highest value
var mult = 1.15
, targetTop = client.settings.thresholds.bgTargetTop
, mgdlMax = d3.max(client.entries, function (d) { return d.mgdl; });
// filter to only use actual SGV's (not rawbg's) to set the view window.
// can switch to Logarithmic (non-dynamic) to see anything that doesn't fit in the dynamicDomain
, mgdlMax = d3.max(client.entries, function (d) { if ( d.type === 'sgv') { return d.mgdl; } });
// use the 99th percentile instead of max to avoid rescaling for 1 flukey data point
// need to sort client.entries by mgdl first
//, mgdlMax = d3.quantile(client.entries, 0.99, function (d) { return d.mgdl; });

return [
utils.scaleMgdl(30)
Expand Down Expand Up @@ -505,7 +511,7 @@ function init (client, d3, $) {

var updateBrush = d3.select('.brush').transition();
updateBrush
.call(chart.brush.extent([new Date(dataRange[1].getTime() - client.foucusRangeMS), dataRange[1]]));
.call(chart.brush.extent([new Date(dataRange[1].getTime() - client.focusRangeMS), dataRange[1]]));
client.brushed(true);

renderer.addContextCircles();
Expand Down
14 changes: 7 additions & 7 deletions lib/client/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,7 @@ client.load = function load(serverSettings, callback) {

client.hashauth.initAuthentication(client.afterAuth);

client.foucusRangeMS = times.hours(client.settings.focusHours).msecs;
client.focusRangeMS = times.hours(client.settings.focusHours).msecs;
$('.focus-range li[data-hours=' + client.settings.focusHours + ']').addClass('selected');
client.brushed = brushed;
client.formatTime = formatTime;
Expand Down Expand Up @@ -365,7 +365,7 @@ client.load = function load(serverSettings, callback) {
d3.select('.brush')
.transition()
.duration(UPDATE_TRANS_MS)
.call(chart.brush.extent([new Date(dataRange[1].getTime() - client.foucusRangeMS), dataRange[1]]));
.call(chart.brush.extent([new Date(dataRange[1].getTime() - client.focusRangeMS), dataRange[1]]));

if (!skipBrushing) {
brushed();
Expand All @@ -385,14 +385,14 @@ client.load = function load(serverSettings, callback) {
var brushExtent = chart.brush.extent();

// ensure that brush extent is fixed at 3.5 hours
if (brushExtent[1].getTime() - brushExtent[0].getTime() !== client.foucusRangeMS) {
if (brushExtent[1].getTime() - brushExtent[0].getTime() !== client.focusRangeMS) {
// ensure that brush updating is with the time range
if (brushExtent[0].getTime() + client.foucusRangeMS > client.dataExtent()[1].getTime()) {
brushExtent[0] = new Date(brushExtent[1].getTime() - client.foucusRangeMS);
if (brushExtent[0].getTime() + client.focusRangeMS > client.dataExtent()[1].getTime()) {
brushExtent[0] = new Date(brushExtent[1].getTime() - client.focusRangeMS);
d3.select('.brush')
.call(chart.brush.extent([brushExtent[0], brushExtent[1]]));
} else {
brushExtent[1] = new Date(brushExtent[0].getTime() + client.foucusRangeMS);
brushExtent[1] = new Date(brushExtent[0].getTime() + client.focusRangeMS);
d3.select('.brush')
.call(chart.brush.extent([brushExtent[0], brushExtent[1]]));
}
Expand Down Expand Up @@ -868,7 +868,7 @@ client.load = function load(serverSettings, callback) {
$('.focus-range li').removeClass('selected');
li.addClass('selected');
var hours = Number(li.data('hours'));
client.foucusRangeMS = times.hours(hours).msecs;
client.focusRangeMS = times.hours(hours).msecs;
Storages.localStorage.set('focusHours', hours);
refreshChart();
} else {
Expand Down
Loading