2021-12-17 15:24:05 +00:00
|
|
|
(function(back) {
|
|
|
|
const SETTINGS_FILE = "lcars.setting.json";
|
|
|
|
|
|
|
|
// initialize with default settings...
|
|
|
|
const storage = require('Storage')
|
|
|
|
let settings = {
|
|
|
|
alarm: -1,
|
|
|
|
dataRow1: "Battery",
|
|
|
|
dataRow2: "Steps",
|
2022-02-11 11:25:22 +00:00
|
|
|
dataRow3: "Temp",
|
|
|
|
speed: "kph",
|
2022-02-13 09:16:32 +00:00
|
|
|
fullscreen: false,
|
2021-12-17 15:24:05 +00:00
|
|
|
};
|
|
|
|
let saved_settings = storage.readJSON(SETTINGS_FILE, 1) || settings;
|
|
|
|
for (const key in saved_settings) {
|
|
|
|
settings[key] = saved_settings[key]
|
|
|
|
}
|
|
|
|
|
|
|
|
function save() {
|
|
|
|
storage.write(SETTINGS_FILE, settings)
|
|
|
|
}
|
|
|
|
|
2022-02-11 11:25:22 +00:00
|
|
|
var dataOptions = ["Steps", "Battery", "VREF", "HRM", "Temp", "Humidity", "Wind", "Altitude", "CoreT"];
|
|
|
|
var speedOptions = ["kph", "mph"];
|
2021-12-17 15:24:05 +00:00
|
|
|
|
|
|
|
E.showMenu({
|
2021-12-17 15:27:36 +00:00
|
|
|
'': { 'title': 'LCARS Clock' },
|
2021-12-17 15:24:05 +00:00
|
|
|
'< Back': back,
|
|
|
|
'Row 1': {
|
2022-02-11 11:25:22 +00:00
|
|
|
value: 0 | dataOptions.indexOf(settings.dataRow1),
|
2022-02-10 21:17:18 +00:00
|
|
|
min: 0, max: 8,
|
2022-02-11 11:25:22 +00:00
|
|
|
format: v => dataOptions[v],
|
2021-12-17 15:24:05 +00:00
|
|
|
onchange: v => {
|
2022-02-11 11:25:22 +00:00
|
|
|
settings.dataRow1 = dataOptions[v];
|
2021-12-17 15:24:05 +00:00
|
|
|
save();
|
|
|
|
},
|
|
|
|
},
|
|
|
|
'Row 2': {
|
2022-02-11 11:25:22 +00:00
|
|
|
value: 0 | dataOptions.indexOf(settings.dataRow2),
|
2022-02-10 21:17:18 +00:00
|
|
|
min: 0, max: 8,
|
2022-02-11 11:25:22 +00:00
|
|
|
format: v => dataOptions[v],
|
2021-12-17 15:24:05 +00:00
|
|
|
onchange: v => {
|
2022-02-11 11:25:22 +00:00
|
|
|
settings.dataRow2 = dataOptions[v];
|
2021-12-17 15:24:05 +00:00
|
|
|
save();
|
|
|
|
},
|
|
|
|
},
|
|
|
|
'Row 3': {
|
2022-02-11 11:25:22 +00:00
|
|
|
value: 0 | dataOptions.indexOf(settings.dataRow3),
|
2022-02-10 21:17:18 +00:00
|
|
|
min: 0, max: 8,
|
2022-02-11 11:25:22 +00:00
|
|
|
format: v => dataOptions[v],
|
2021-12-17 15:24:05 +00:00
|
|
|
onchange: v => {
|
2022-02-11 11:25:22 +00:00
|
|
|
settings.dataRow3 = dataOptions[v];
|
|
|
|
save();
|
|
|
|
},
|
|
|
|
},
|
2022-02-13 09:16:32 +00:00
|
|
|
'Full Screen': {
|
|
|
|
value: settings.fullscreen,
|
|
|
|
format: () => (settings.fullscreen ? 'Yes' : 'No'),
|
|
|
|
onchange: () => {
|
|
|
|
settings.fullscreen = !settings.fullscreen;
|
|
|
|
save();
|
|
|
|
},
|
|
|
|
},
|
2022-02-11 11:25:22 +00:00
|
|
|
'Speed': {
|
|
|
|
value: 0 | speedOptions.indexOf(settings.speed),
|
|
|
|
min: 0, max: 1,
|
|
|
|
format: v => speedOptions[v],
|
|
|
|
onchange: v => {
|
|
|
|
settings.speed = speedOptions[v];
|
2021-12-17 15:24:05 +00:00
|
|
|
save();
|
|
|
|
},
|
|
|
|
}
|
|
|
|
});
|
|
|
|
})
|