Added myprofile
parent
b723512dce
commit
7fc2ce0375
|
|
@ -0,0 +1,11 @@
|
||||||
|
# My Profile
|
||||||
|
|
||||||
|
Configure your personal profile. All settings are optional and are only stored on the watch.
|
||||||
|
|
||||||
|
## Available settings
|
||||||
|
|
||||||
|
| Setting | Description | Displayed in | Stored in | Default value | How to measure |
|
||||||
|
| ------------- | ----------------------------- | ------------------- | --------- | ------------- | ----------------------------------------------------------------- |
|
||||||
|
| HR max | maximum heart rate | BPM | BPM | 60 | Use maximum value when exercising.<br/> If unsure set to 220-age. |
|
||||||
|
| HR min | minimum heart rate | BPM | BPM | 200 | Measure your heart rate after waking up |
|
||||||
|
| Stride length | distance travel with one step | local length unit | meter | 0 (=not set) | Walk 10 steps and divide the travelled distance by 10 |
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 1.2 KiB |
|
|
@ -0,0 +1,18 @@
|
||||||
|
{ "id": "myprofile",
|
||||||
|
"name": "My Profile",
|
||||||
|
"shortName":"My Profile",
|
||||||
|
"icon": "app.png",
|
||||||
|
"type": "settings",
|
||||||
|
"version":"0.01",
|
||||||
|
"description": "Configure your personal profile. All settings are optional and only stored on the watch.",
|
||||||
|
"readme": "README.md",
|
||||||
|
"tags": "tool,utility",
|
||||||
|
"supports": ["BANGLEJS", "BANGLEJS2"],
|
||||||
|
"storage": [
|
||||||
|
{"name":"myprofile.settings.js","url":"settings.js"}
|
||||||
|
],
|
||||||
|
"data": [
|
||||||
|
{"name":"myprofile.json"}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
(function(back) {
|
||||||
|
const FILE = "myprofile.json";
|
||||||
|
|
||||||
|
const myprofile = Object.assign({
|
||||||
|
minHrm: 60,
|
||||||
|
maxHrm: 200,
|
||||||
|
strideLength: 0, // 0 = not set
|
||||||
|
}, require('Storage').readJSON(FILE, true) || {});
|
||||||
|
|
||||||
|
function writeProfile() {
|
||||||
|
require('Storage').writeJSON(FILE, myprofile);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Show the menu
|
||||||
|
E.showMenu({
|
||||||
|
"" : { "title" : /*LANG*/"My Profile" },
|
||||||
|
|
||||||
|
"< Back" : () => back(),
|
||||||
|
|
||||||
|
/*LANG*/'HR max': {
|
||||||
|
format: v => /*LANG*/`${v} BPM`,
|
||||||
|
value: myprofile.maxHrm,
|
||||||
|
min: 30, max: 220,
|
||||||
|
onchange: v => {
|
||||||
|
myprofile.maxHrm = v;
|
||||||
|
writeProfile();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/*LANG*/'HR min': {
|
||||||
|
format: v => /*LANG*/`${v} BPM`,
|
||||||
|
value: myprofile.minHrm,
|
||||||
|
min: 30, max: 220,
|
||||||
|
onchange: v => {
|
||||||
|
myprofile.minHrm = v;
|
||||||
|
writeProfile();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/*LANG*/"Stride length": {
|
||||||
|
value: myprofile.strideLength,
|
||||||
|
min:0.00,
|
||||||
|
step:0.01,
|
||||||
|
format: v => v ? require("locale").distance(v, 2) : '-',
|
||||||
|
onchange: v => {
|
||||||
|
console.log(v);
|
||||||
|
myprofile.strideLength=v;
|
||||||
|
writeProfile();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
})
|
||||||
Loading…
Reference in New Issue