BangleApps/apps/messages/settings.js

43 lines
1.4 KiB
JavaScript
Raw Normal View History

2021-11-25 16:33:45 +00:00
(function(back) {
function settings() {
let settings = require('Storage').readJSON("messages.settings.json", true) || {};
if (settings.vibrate===undefined) settings.vibrate=".";
if (settings.repeat===undefined) settings.repeat=4;
if (settings.unreadTimeout===undefined) settings.unreadTimeout=60;
2021-11-25 16:33:45 +00:00
return settings;
}
function updateSetting(setting, value) {
let settings = require('Storage').readJSON("messages.settings.json", true) || {};
settings[setting] = value;
require('Storage').writeJSON("messages.settings.json", settings);
}
2022-01-19 11:49:59 +00:00
var vibPatterns = [/*LANG*/"Off", ".", "-", "--", "-.-", "---"];
2021-11-25 16:33:45 +00:00
var currentVib = settings().vibrate;
var mainmenu = {
2022-01-19 11:49:59 +00:00
"" : { "title" : /*LANG*/"Messages" },
2021-11-25 16:33:45 +00:00
"< Back" : back,
2022-01-19 11:49:59 +00:00
/*LANG*/'Vibrate': {
2021-11-25 16:33:45 +00:00
value: Math.max(0,vibPatterns.indexOf(settings().vibrate)),
min: 0, max: vibPatterns.length,
format: v => vibPatterns[v]||"Off",
onchange: v => {
updateSetting("vibrate", vibPatterns[v]);
}
},
2022-01-19 11:49:59 +00:00
/*LANG*/'Repeat': {
2021-11-25 16:33:45 +00:00
value: settings().repeat,
min: 2, max: 10,
format: v => v+"s",
onchange: v => updateSetting("repeat", v)
},
2022-01-19 11:49:59 +00:00
/*LANG*/'Unread timer': {
value: settings().unreadTimeout,
min: 0, max: 240, step : 10,
2022-01-19 11:49:59 +00:00
format: v => v?v+"s":/*LANG*/"Off",
onchange: v => updateSetting("unreadTimeout", v)
},
2021-11-25 16:33:45 +00:00
};
E.showMenu(mainmenu);
})