BangleApps/apps/slopeclockpp/settings.js

65 lines
1.9 KiB
JavaScript
Raw Normal View History

2022-11-09 19:29:14 +00:00
(function(back) {
2022-11-09 19:38:15 +00:00
const SETTINGS_FILE = "slopeclockpp.json";
2022-11-09 19:29:14 +00:00
const storage = require('Storage');
let settings = Object.assign(
2022-11-09 19:38:15 +00:00
storage.readJSON("slopeclockpp.default.json", true) || {},
2022-11-09 19:29:14 +00:00
storage.readJSON(SETTINGS_FILE, true) || {}
);
function save(key, value) {
settings[key] = value;
storage.write(SETTINGS_FILE, settings);
}
function showMainMenu() {
let menu ={
'': { 'title': 'Slope Clock ++' },
/*LANG*/'< Back': back,
/*LANG*/'show steps': {
value: !!settings.showSteps,
format: () => (settings.showSteps ? 'Yes' : 'No'),
onchange: x => save('showSteps', x),
},
/*LANG*/'show weather': {
value: !!settings.showWeather,
format: () => (settings.showWeather ? 'Yes' : 'No'),
onchange: x => save('showWeather', x),
},
/*LANG*/'red': {
value: !!settings.colorRed,
format: () => (settings.colorRed ? 'Yes' : 'No'),
onchange: x => save('colorRed', x),
},
/*LANG*/'green': {
value: !!settings.colorGreen,
format: () => (settings.colorGreen ? 'Yes' : 'No'),
onchange: x => save('colorGreen', x),
},
/*LANG*/'blue': {
value: !!settings.colorBlue,
format: () => (settings.colorBlue ? 'Yes' : 'No'),
onchange: x => save('colorBlue', x),
},
/*LANG*/'magenta': {
value: !!settings.colorMagenta,
format: () => (settings.colorMagenta ? 'Yes' : 'No'),
onchange: x => save('colorMagenta', x),
},
/*LANG*/'cyan': {
value: !!settings.colorCyan,
format: () => (settings.colorCyan ? 'Yes' : 'No'),
onchange: x => save('colorCyan', x),
},
/*LANG*/'yellow': {
value: !!settings.colorYellow,
format: () => (settings.colorYellow ? 'Yes' : 'No'),
onchange: x => save('colorYellow', x),
}
};
E.showMenu(menu);
}
showMainMenu();
});