From 4326676535103f1277c346c9b21389c16caec1ec Mon Sep 17 00:00:00 2001 From: James M Snell Date: Thu, 7 Nov 2019 15:28:07 -0800 Subject: [PATCH] Settings menu for manually setting the time/date --- apps/settings.js | 87 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) diff --git a/apps/settings.js b/apps/settings.js index 204e0e798..245feae6b 100644 --- a/apps/settings.js +++ b/apps/settings.js @@ -99,6 +99,7 @@ function showMainMenu() { updateSettings(); } }, + 'Set Time': showSetTimeMenu, 'Reset': showResetMenu, 'Turn Off': Bangle.off, '< Back': load @@ -132,4 +133,90 @@ function showResetMenu() { return Bangle.menu(resetmenu); } +function showSetTimeMenu() { + d = new Date(); + const timemenu = { + '': { + 'title': 'Set Time', + 'predraw': function() { + d = new Date(); + timemenu.Hour.value = d.getHours(); + timemenu.Minute.value = d.getMinutes(); + timemenu.Second.value = d.getSeconds(); + timemenu.Date.value = d.getDate(); + timemenu.Month.value = d.getMonth() + 1; + timemenu.Year.value = d.getFullYear(); + } + }, + '< Back': showMainMenu, + 'Hour': { + value: d.getHours(), + min: 0, + max: 23, + step: 1, + onchange: v => { + d = new Date(); + d.setHours(v); + setTime(d.getTime()/1000); + } + }, + 'Minute': { + value: d.getMinutes(), + min: 0, + max: 59, + step: 1, + onchange: v => { + d = new Date(); + d.setMinutes(v); + setTime(d.getTime()/1000); + } + }, + 'Second': { + value: d.getSeconds(), + min: 0, + max: 59, + step: 1, + onchange: v => { + d = new Date(); + d.setSeconds(v); + setTime(d.getTime()/1000); + } + }, + 'Date': { + value: d.getDate(), + min: 1, + max: 31, + step: 1, + onchange: v => { + d = new Date(); + d.setDate(v); + setTime(d.getTime()/1000); + } + }, + 'Month': { + value: d.getMonth() + 1, + min: 1, + max: 12, + step: 1, + onchange: v => { + d = new Date(); + d.setMonth(v - 1); + setTime(d.getTime()/1000); + } + }, + 'Year': { + value: d.getFullYear(), + min: d.getFullYear() - 10, + max: d.getFullYear() + 10, + step: 1, + onchange: v => { + d = new Date(); + d.setFullYear(v); + setTime(d.getTime()/1000); + } + } + }; + return Bangle.menu(timemenu); +} + showMainMenu();