BangleApps/apps/weatherClock/settings.js

59 lines
1.1 KiB
JavaScript
Raw Normal View History

2023-02-25 15:05:03 +00:00
(function(back) {
const SETTINGS_FILE = "weatherClock.json";
// initialize with default settings...
let s = {
2023-02-26 13:37:16 +00:00
'icon': true,
2023-02-25 15:05:03 +00:00
'day': true,
'date': true,
'wind': true
}
// ...and overwrite them with any saved values
// This way saved values are preserved if a new version adds more settings
const storage = require('Storage')
let settings = storage.readJSON(SETTINGS_FILE, 1) || {}
const saved = settings || {}
for (const key in saved) {
s[key] = saved[key]
}
function save() {
settings = s
storage.write(SETTINGS_FILE, settings)
}
E.showMenu({
2023-02-25 15:19:10 +00:00
'': { 'title': 'Weather Clock' },
'< Back': back,
2023-02-26 13:37:16 +00:00
'Weather Icon': {
value: !!s.icon,
onchange: v => {
s.icon = v;
save();
},
},
2023-02-25 18:17:42 +00:00
'Day Of Week': {
2023-02-25 15:05:03 +00:00
value: !!s.day,
onchange: v => {
s.day = v;
save();
},
},
2023-02-25 18:17:42 +00:00
'Date': {
2023-02-25 15:05:03 +00:00
value: !!s.date,
onchange: v => {
s.date = v;
save();
},
},
2023-02-25 18:17:42 +00:00
'Wind Speed': {
2023-02-25 15:05:03 +00:00
value: !!s.wind,
onchange: v => {
s.wind = v;
save();
},
}
})
})