forked from FOSS/BangleApps
Merge pull request #1747 from alessandrococco/health-settings
[Health Tracking] Move settingsmaster
commit
6a6973d986
|
@ -12,3 +12,4 @@
|
||||||
0.11: Pre-minified boot&lib - folds constants and saves RAM
|
0.11: Pre-minified boot&lib - folds constants and saves RAM
|
||||||
0.12: Add setting for Daily Step Goal
|
0.12: Add setting for Daily Step Goal
|
||||||
0.13: Add support for internationalization
|
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() {
|
function menuMain() {
|
||||||
swipe_enabled = false;
|
swipe_enabled = false;
|
||||||
clearButton();
|
clearButton();
|
||||||
|
@ -17,39 +6,7 @@ function menuMain() {
|
||||||
/*LANG*/"< Back": () => load(),
|
/*LANG*/"< Back": () => load(),
|
||||||
/*LANG*/"Step Counting": () => menuStepCount(),
|
/*LANG*/"Step Counting": () => menuStepCount(),
|
||||||
/*LANG*/"Movement": () => menuMovement(),
|
/*LANG*/"Movement": () => menuMovement(),
|
||||||
/*LANG*/"Heart Rate": () => menuHRM(),
|
/*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);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -86,7 +43,6 @@ function menuHRM() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function stepsPerHour() {
|
function stepsPerHour() {
|
||||||
E.showMessage(/*LANG*/"Loading...");
|
E.showMessage(/*LANG*/"Loading...");
|
||||||
let data = new Uint16Array(24);
|
let data = new Uint16Array(24);
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"id": "health",
|
"id": "health",
|
||||||
"name": "Health Tracking",
|
"name": "Health Tracking",
|
||||||
"version": "0.13",
|
"version": "0.14",
|
||||||
"description": "Logs health data and provides an app to view it",
|
"description": "Logs health data and provides an app to view it",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"tags": "tool,system,health",
|
"tags": "tool,system,health",
|
||||||
|
@ -12,6 +12,8 @@
|
||||||
{"name":"health.app.js","url":"app.js"},
|
{"name":"health.app.js","url":"app.js"},
|
||||||
{"name":"health.img","url":"app-icon.js","evaluate":true},
|
{"name":"health.img","url":"app-icon.js","evaluate":true},
|
||||||
{"name":"health.boot.js","url":"boot.min.js"},
|
{"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