mirror of https://github.com/espruino/BangleApps
Merge pull request #3229 from thinkpoop/dnd-toggle-settings
a_dndtoggle: add settings pagepull/3236/head
commit
a9b4417574
|
@ -1 +1,2 @@
|
||||||
0.01: Initial version
|
0.01: Initial version
|
||||||
|
0.02: Add settings page; Add line break to update message
|
|
@ -1,10 +1,13 @@
|
||||||
# a_dndtoggle - Toggle Quiet Mode of the watch
|
# a_dndtoggle - Toggle Quiet Mode of the watch
|
||||||
|
|
||||||
When Quiet mode is off, just start this app to set quiet mode. Start it again to turn off quiet mode.
|
When Quiet mode is off, just start this app to set quiet mode. Start it again to turn off quiet mode.
|
||||||
|
|
||||||
|
Use the app settings to choose which quiet mode you prefer ("Alarms" or "Silent"). Default is "Silent".
|
||||||
|
|
||||||
Work in progress.
|
Work in progress.
|
||||||
|
|
||||||
#ToDo
|
#ToDo
|
||||||
Settings page, current status indicator.
|
Current status indicator
|
||||||
|
|
||||||
## Creator
|
## Creator
|
||||||
|
|
||||||
|
|
|
@ -6,11 +6,14 @@ let current = 0|bSettings.quiet;
|
||||||
//1 alarms
|
//1 alarms
|
||||||
//2 silent
|
//2 silent
|
||||||
|
|
||||||
|
const dndSettings =
|
||||||
|
require('Storage').readJSON("a_dndtoggle.settings.json", true) || {};
|
||||||
|
|
||||||
console.log("old: " + current);
|
console.log("old: " + current);
|
||||||
|
|
||||||
switch (current) {
|
switch (current) {
|
||||||
case 0:
|
case 0:
|
||||||
bSettings.quiet = 2;
|
bSettings.quiet = dndSettings.mode || 2;
|
||||||
Bangle.buzz();
|
Bangle.buzz();
|
||||||
setTimeout('Bangle.buzz();',500);
|
setTimeout('Bangle.buzz();',500);
|
||||||
break;
|
break;
|
||||||
|
@ -29,7 +32,7 @@ switch (current) {
|
||||||
|
|
||||||
console.log("new: " + bSettings.quiet);
|
console.log("new: " + bSettings.quiet);
|
||||||
|
|
||||||
E.showMessage(modeNames[current] + " -> " + modeNames[bSettings.quiet]);
|
E.showMessage(modeNames[current] + " -> \n" + modeNames[bSettings.quiet]);
|
||||||
setTimeout('exitApp();', 2000);
|
setTimeout('exitApp();', 2000);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2,14 +2,18 @@
|
||||||
"id": "a_dndtoggle",
|
"id": "a_dndtoggle",
|
||||||
"name": "a_dndtoggle - Toggle Quiet Mode of the watch",
|
"name": "a_dndtoggle - Toggle Quiet Mode of the watch",
|
||||||
"shortName": "A_DND Toggle",
|
"shortName": "A_DND Toggle",
|
||||||
"version": "0.01",
|
"version": "0.02",
|
||||||
"description": "Toggle Quiet Mode of the watch just by starting this app.",
|
"description": "Toggle Quiet Mode of the watch just by starting this app.",
|
||||||
"icon": "a_dndtoggle.png",
|
"icon": "a_dndtoggle.png",
|
||||||
"type": "app",
|
"type": "app",
|
||||||
"tags": "tool",
|
"tags": "tool",
|
||||||
"supports": ["BANGLEJS","BANGLEJS2"],
|
"supports": ["BANGLEJS","BANGLEJS2"],
|
||||||
|
"data" : [
|
||||||
|
{"name":"a_dndtoggle.settings.json"}
|
||||||
|
],
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"a_dndtoggle.app.js","url":"a_dndtoggle.app.js"},
|
{"name":"a_dndtoggle.app.js","url":"a_dndtoggle.app.js"},
|
||||||
|
{"name":"a_dndtoggle.settings.js","url":"settings.js"},
|
||||||
{"name":"a_dndtoggle.img","url":"app-icon.js","evaluate":true}
|
{"name":"a_dndtoggle.img","url":"app-icon.js","evaluate":true}
|
||||||
],
|
],
|
||||||
"readme": "README.md"
|
"readme": "README.md"
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
(function(back) {
|
||||||
|
|
||||||
|
const settings =
|
||||||
|
require('Storage').readJSON("a_dndtoggle.settings.json", true) || {};
|
||||||
|
|
||||||
|
function updateSettings() {
|
||||||
|
require('Storage').writeJSON("a_dndtoggle.settings.json", settings);
|
||||||
|
}
|
||||||
|
|
||||||
|
function buildMainMenu(){
|
||||||
|
// 0-Noisy is only a placeholder so that the other values map to the Bangle quiet mode options
|
||||||
|
const modes = [/*LANG*/"Noisy",/*LANG*/"Alarms",/*LANG*/"Silent"];
|
||||||
|
let mainmenu = {
|
||||||
|
'': { 'title': 'A_DND Toggle' },
|
||||||
|
'< Back': back,
|
||||||
|
/*LANG*/"Quiet Mode": {
|
||||||
|
value: settings.mode || 2,
|
||||||
|
min: 1, // don't allow choosing 0-Noisy
|
||||||
|
max: modes.length - 1,
|
||||||
|
format: v => modes[v],
|
||||||
|
onchange: v => {
|
||||||
|
settings.mode = v;
|
||||||
|
updateSettings();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
return mainmenu;
|
||||||
|
}
|
||||||
|
|
||||||
|
E.showMenu(buildMainMenu());
|
||||||
|
});
|
||||||
|
|
Loading…
Reference in New Issue