Show current time & change ejected state

This commit is contained in:
danbulant 2020-02-15 22:00:43 +01:00
parent e6de0b2666
commit 78b6d8ab43

View file

@ -17,13 +17,33 @@ class Welcome implements RenderDef {
async prepare(){
this.element = document.createElement("div");
var el = this.element;//LAZYNESS
el.className = "welcome-page";
el.className = "welcome-page";
var t:HTMLDivElement = document.createElement("div");
t.className = "welcome-time";
var d:Date = new Date();
t.innerText = d.getHours().toString().padStart(2, "0") + ":" + d.getMinutes().toString().padStart(2, "0");
var w:RenderDef = this;
setTimeout(() => {
var d:Date = new Date();
t.innerText = d.getHours().toString().padStart(2, "0") + ":" + d.getMinutes().toString().padStart(2, "0");
var id:NodeJS.Timeout = setInterval(()=>{
if(w.state != RenderStates.Rendered)return clearInterval(id);
var d = new Date();
t.innerText = d.getHours().toString().padStart(2, "0") + ":" + d.getMinutes().toString().padStart(2, "0");
}, 60000)
}, 60000 - d.getMilliseconds());//exactly every minute
el.appendChild(t);
this.state = RenderStates.Ready;
}
eject(){
document.body.removeChild(this.element);
this.state = RenderStates.Hidden; //this eject function doesn't destroy anything, so it might be reused
this.state = RenderStates.Ejected;
}
}