mirror of https://github.com/espruino/BangleApps
Merge pull request #1747 from alessandrococco/health-settings
[Health Tracking] Move settingspull/1753/head
commit
6a6973d986
|
@ -12,3 +12,4 @@
|
|||
0.11: Pre-minified boot&lib - folds constants and saves RAM
|
||||
0.12: Add setting for Daily Step Goal
|
||||
0.13: Add support for internationalization
|
||||
0.14: Move settings
|
||||
|
|
|
@ -1,14 +1,3 @@
|
|||
function getSettings() {
|
||||
return Object.assign({
|
||||
hrm: 0,
|
||||
stepGoal: 10000
|
||||
}, require("Storage").readJSON("health.json", true) || {});
|
||||
}
|
||||
|
||||
function setSettings(settings) {
|
||||
require("Storage").writeJSON("health.json", settings);
|
||||
}
|
||||
|
||||
function menuMain() {
|
||||
swipe_enabled = false;
|
||||
clearButton();
|
||||
|
@ -17,39 +6,7 @@ function menuMain() {
|
|||
/*LANG*/"< Back": () => load(),
|
||||
/*LANG*/"Step Counting": () => menuStepCount(),
|
||||
/*LANG*/"Movement": () => menuMovement(),
|
||||
/*LANG*/"Heart Rate": () => menuHRM(),
|
||||
/*LANG*/"Settings": () => menuSettings()
|
||||
});
|
||||
}
|
||||
|
||||
function menuSettings() {
|
||||
swipe_enabled = false;
|
||||
clearButton();
|
||||
let settings = getSettings();
|
||||
|
||||
E.showMenu({
|
||||
"": { title:/*LANG*/"Health Tracking" },
|
||||
/*LANG*/"< Back": () => menuMain(),
|
||||
/*LANG*/"HRM Interval": {
|
||||
value: settings.hrm,
|
||||
min: 0,
|
||||
max: 3,
|
||||
format: v => [ /*LANG*/"Off", /*LANG*/"3 min", /*LANG*/"10 min", /*LANG*/"Always"][v],
|
||||
onchange: v => {
|
||||
settings.hrm = v;
|
||||
setSettings(settings);
|
||||
}
|
||||
},
|
||||
/*LANG*/"Daily Step Goal": {
|
||||
value: settings.stepGoal,
|
||||
min: 0,
|
||||
max: 20000,
|
||||
step: 250,
|
||||
onchange: v => {
|
||||
settings.stepGoal = v;
|
||||
setSettings(settings);
|
||||
}
|
||||
}
|
||||
/*LANG*/"Heart Rate": () => menuHRM()
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -86,7 +43,6 @@ function menuHRM() {
|
|||
});
|
||||
}
|
||||
|
||||
|
||||
function stepsPerHour() {
|
||||
E.showMessage(/*LANG*/"Loading...");
|
||||
let data = new Uint16Array(24);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "health",
|
||||
"name": "Health Tracking",
|
||||
"version": "0.13",
|
||||
"version": "0.14",
|
||||
"description": "Logs health data and provides an app to view it",
|
||||
"icon": "app.png",
|
||||
"tags": "tool,system,health",
|
||||
|
@ -12,6 +12,8 @@
|
|||
{"name":"health.app.js","url":"app.js"},
|
||||
{"name":"health.img","url":"app-icon.js","evaluate":true},
|
||||
{"name":"health.boot.js","url":"boot.min.js"},
|
||||
{"name":"health","url":"lib.min.js"}
|
||||
]
|
||||
{"name":"health","url":"lib.min.js"},
|
||||
{"name":"health.settings.js","url":"settings.js"}
|
||||
],
|
||||
"data": [{"name":"health.json"}]
|
||||
}
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
(function (back) {
|
||||
var settings = Object.assign({
|
||||
hrm: 0,
|
||||
stepGoal: 10000
|
||||
}, require("Storage").readJSON("health.json", true) || {});
|
||||
|
||||
E.showMenu({
|
||||
"": { title: /*LANG*/"Health Tracking" },
|
||||
|
||||
/*LANG*/"< Back": () => back(),
|
||||
|
||||
/*LANG*/"HRM Interval": {
|
||||
value: settings.hrm,
|
||||
min: 0,
|
||||
max: 3,
|
||||
format: v => [
|
||||
/*LANG*/"Off",
|
||||
/*LANG*/"3 min",
|
||||
/*LANG*/"10 min",
|
||||
/*LANG*/"Always"
|
||||
][v],
|
||||
onchange: v => {
|
||||
settings.hrm = v;
|
||||
setSettings(settings);
|
||||
}
|
||||
},
|
||||
|
||||
/*LANG*/"Daily Step Goal": {
|
||||
value: settings.stepGoal,
|
||||
min: 0,
|
||||
max: 20000,
|
||||
step: 250,
|
||||
onchange: v => {
|
||||
settings.stepGoal = v;
|
||||
setSettings(settings);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function setSettings(settings) {
|
||||
require("Storage").writeJSON("health.json", settings);
|
||||
}
|
||||
});
|
Loading…
Reference in New Issue