2023-01-08 11:31:19 +00:00
|
|
|
(function (back) {
|
2023-02-14 09:52:20 +00:00
|
|
|
const SAVEFILE = "widbgjs.settings.json";
|
2023-01-08 11:31:19 +00:00
|
|
|
|
|
|
|
// initialize with default settings...
|
|
|
|
let s = {
|
|
|
|
'unitIsMmol': true,
|
|
|
|
'expireThreshold': 600000,
|
|
|
|
'hide': false
|
|
|
|
};
|
|
|
|
// ...and overwrite them with any saved values
|
|
|
|
// This way saved values are preserved if a new version adds more settings
|
|
|
|
const storage = require('Storage');
|
2023-02-14 20:38:32 +00:00
|
|
|
var d = storage.readJSON(SAVEFILE, 1) || {};
|
|
|
|
const saved = d || {};
|
2023-01-08 11:31:19 +00:00
|
|
|
for (const key in saved) {
|
|
|
|
s[key] = saved[key];
|
|
|
|
}
|
|
|
|
|
|
|
|
function save() {
|
2023-02-14 20:38:32 +00:00
|
|
|
d = s;
|
2023-01-08 11:31:19 +00:00
|
|
|
storage.write(SAVEFILE, d);
|
|
|
|
WIDGETS['widbgjs'].draw();
|
|
|
|
}
|
|
|
|
|
|
|
|
E.showMenu({
|
|
|
|
'': { 'title': 'BG widget' },
|
|
|
|
'Unit': {
|
|
|
|
value: s.unitIsMmol,
|
|
|
|
format: () => (s.unitIsMmol ? 'mmol/L' : 'mg/dL'),
|
|
|
|
onchange: () => {
|
|
|
|
s.unitIsMmol = !s.unitIsMmol;
|
|
|
|
save();
|
|
|
|
},
|
|
|
|
},
|
|
|
|
'Exp. BG': {
|
|
|
|
value: s.expireThreshold,
|
|
|
|
min: 18000, step: 60000,
|
|
|
|
format: s => (s ? s / 60000 + ' min' : '0'),
|
|
|
|
onchange: (g) => {
|
|
|
|
s.expireThreshold = g;
|
|
|
|
save();
|
|
|
|
},
|
|
|
|
},
|
|
|
|
'Hide Widget': {
|
|
|
|
value: s.hide,
|
|
|
|
onchange: () => {
|
|
|
|
s.hide = !s.hide;
|
|
|
|
save();
|
|
|
|
},
|
|
|
|
},
|
|
|
|
'< Back': back,
|
|
|
|
});
|
2024-10-28 19:16:14 +00:00
|
|
|
})
|