BangleApps/apps/gipy/settings.js

58 lines
1.6 KiB
JavaScript

(function(back) {
var FILE = "gipy.json";
// Load settings
var settings = Object.assign({
lost_distance: 50,
buzz_on_turns: false,
disable_bluetooth: true,
power_lcd_off: true,
},
require("Storage").readJSON(FILE, true) || {}
);
function writeSettings() {
require("Storage").writeJSON(FILE, settings);
}
// Show the menu
E.showMenu({
"": {
title: "Gipy"
},
"< Back": () => back(),
"buzz on turns": {
value: !!settings.buzz_on_turns, // !! converts undefined to false
format: (v) => (v ? "Yes" : "No"),
onchange: (v) => {
settings.buzz_on_turns = v;
writeSettings();
}
},
"disable bluetooth": {
value: !!settings.disable_bluetooth, // !! converts undefined to false
format: (v) => (v ? "Yes" : "No"),
onchange: (v) => {
settings.disable_bluetooth = v;
writeSettings();
}
},
"lost distance": {
value: 50 | settings.lost_distance, // 0| converts undefined to 0
min: 10,
max: 500,
onchange: (v) => {
settings.max_speed = v;
writeSettings();
},
},
"power lcd off": {
value: !!settings.power_lcd_off, // !! converts undefined to false
format: (v) => (v ? "Yes" : "No"),
onchange: (v) => {
settings.power_lcd_off = v;
writeSettings();
}
},
});
});