BangleApps/apps/chimer/settings.js

67 lines
1.3 KiB
JavaScript
Raw Normal View History

2022-08-22 20:49:10 +00:00
/**
* @param {function} back Use back() to return to settings menu
*/
(function(back) {
// default to buzzing
2022-08-22 21:32:17 +00:00
var FILE = "chimer.json";
var settings = {};
const chimes = ["Off", "Buzz", "Beep", "Both"];
2022-08-23 04:12:34 +00:00
const frequency = ["60", "30", "15", "1"];
2022-08-22 20:49:10 +00:00
2022-08-22 23:09:32 +00:00
var showMainMenu = () => {
E.showMenu({
2022-08-22 21:32:17 +00:00
"": {"title": "Chimer"},
"< Back": () => back(),
2022-08-22 20:49:10 +00:00
"Chime Type": {
value: settings.type,
2022-08-22 21:57:12 +00:00
min: 0, max: 2, // both is just silly
2022-08-22 22:09:14 +00:00
format: v => chimes[v],
onchange: v => {
settings.type = v;
2022-08-22 21:32:17 +00:00
writeSettings(settings);
2022-08-22 20:49:10 +00:00
},
},
"Frequency": {
value: settings.freq,
2022-08-23 04:12:34 +00:00
min: 0, max: 3,
2022-08-23 00:59:15 +00:00
format: v => frequency[v],
2022-08-22 22:18:57 +00:00
onchange: v => {
2022-08-22 22:09:14 +00:00
settings.freq = v;
2022-08-22 21:32:17 +00:00
writeSettings(settings);
2022-08-22 20:49:10 +00:00
}
},
"Repetition": {
value: settings.repeat,
min: 1, max: 3,
2022-08-23 00:59:15 +00:00
format: v => v,
onchange: v => {
settings.repeat = v;
writeSettings(settings);
}
2022-08-22 20:49:10 +00:00
}
2022-08-23 02:03:40 +00:00
});
};
2022-08-22 23:09:32 +00:00
2022-08-22 20:49:10 +00:00
2022-08-22 23:09:32 +00:00
var readSettings = () => {
var settings = require("Storage").readJSON(FILE, 1) || {
type: 1,
freq: 0,
2022-08-23 01:04:51 +00:00
repeat: 1,
2022-08-22 23:09:32 +00:00
};
return settings;
};
var writeSettings = (settings) => {
require("Storage").writeJSON(FILE, settings);
};
settings = readSettings();
showMainMenu();
2022-08-22 20:49:10 +00:00
})