2020-01-17 11:43:26 +00:00
|
|
|
// This runs after a 'fresh' boot
|
2020-06-10 06:57:24 +00:00
|
|
|
var clockApp=(require("Storage").readJSON("setting.json",1)||{}).clock;
|
2020-06-06 20:32:50 +00:00
|
|
|
if (clockApp) clockApp = require("Storage").read(clockApp);
|
2020-04-04 16:25:58 +00:00
|
|
|
if (!clockApp) {
|
2020-06-10 08:04:48 +00:00
|
|
|
clockApp = require("Storage").list(/\.info$/)
|
|
|
|
.map(file => {
|
|
|
|
const app = require("Storage").readJSON(file,1);
|
|
|
|
if (app && app.type == "clock") {
|
|
|
|
return app;
|
|
|
|
}
|
|
|
|
})
|
|
|
|
.filter(x=>x)
|
|
|
|
.sort((a, b) => a.sortorder - b.sortorder)[0];
|
2020-06-10 06:57:24 +00:00
|
|
|
if (clockApp)
|
|
|
|
clockApp = require("Storage").read(clockApp.src);
|
2020-04-04 16:25:58 +00:00
|
|
|
}
|
2021-05-28 13:20:01 +00:00
|
|
|
if (!clockApp) clockApp=`E.showMessage("No Clock Found");setWatch(()=>{Bangle.showLauncher();}, BTN2, {repeat:false,edge:"falling"});`;
|
2020-04-04 16:25:58 +00:00
|
|
|
// check to see if our clock is wrong - if it is use GPS time
|
2020-06-03 04:48:13 +00:00
|
|
|
if ((new Date()).getFullYear()<2000) {
|
2020-04-04 16:25:58 +00:00
|
|
|
E.showMessage("Searching for\nGPS time");
|
2020-06-10 06:57:24 +00:00
|
|
|
Bangle.on("GPS",function cb(g) {
|
2020-04-04 16:25:58 +00:00
|
|
|
Bangle.setGPSPower(0);
|
|
|
|
Bangle.removeListener("GPS",cb);
|
|
|
|
if (!g.time || (g.time.getFullYear()<2000) ||
|
2020-06-03 04:48:13 +00:00
|
|
|
(g.time.getFullYear()>2200)) {
|
2020-04-04 16:25:58 +00:00
|
|
|
// GPS receiver's time not set - just boot clock anyway
|
2020-06-06 20:32:50 +00:00
|
|
|
eval(clockApp);
|
|
|
|
delete clockApp;
|
2020-04-04 16:25:58 +00:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
// We have a GPS time. Set time and reboot (to load alarms properly)
|
|
|
|
setTime(g.time.getTime()/1000);
|
|
|
|
load();
|
|
|
|
});
|
|
|
|
Bangle.setGPSPower(1);
|
2020-02-13 08:18:32 +00:00
|
|
|
} else {
|
2020-04-04 16:25:58 +00:00
|
|
|
eval(clockApp);
|
|
|
|
delete clockApp;
|
2019-11-06 22:12:54 +00:00
|
|
|
}
|