Countdown works now!

This commit is contained in:
2022-02-24 19:11:13 +01:00
parent a37d2dd58a
commit 704d3d0d98
7 changed files with 142 additions and 32 deletions

8
static/js/interface.js Normal file
View File

@ -0,0 +1,8 @@
function convertTimeOffset(){
selTime = new Date().getTime() + document.getElementById('time2').valueAsNumber
document.getElementById("time").value = selTime
}
function updateHiddenForm(){
document.getElementById("time").value = document.getElementById('time2').valueAsNumber
}

View File

@ -1,32 +1,71 @@
var newDateObj = new Date();
newDateObj = new Date(newDateObj.getTime() + 1000*20)
function enterFullscreen(element) {
if(element.requestFullscreen) {
element.requestFullscreen();
} else if(element.msRequestFullscreen) { // for IE11 (remove June 15, 2022)
element.msRequestFullscreen();
} else if(element.webkitRequestFullscreen) { // iOS Safari
element.webkitRequestFullscreen();
}
}
function updateFullscreen(){
if(JSON.parse(document.getElementById("incomeData").innerHTML).defaultFullScreen){
enterFullscreen(document.documentElement)
}
}
function msToTime(s, data) {
isSmallerThenZero = false
if(s < 0){
isSmallerThenZero = true
}
var ms = s % 1000;
s = (s - ms) / 1000;
var secs = s % 60;
s = (s - secs) / 60;
var mins = s % 60;
var hrs = (s - mins) / 60;
let out = ""
if(!data.showMilliSeconds){
out = ('00' + Math.abs(hrs)).slice(-2) + ':' + ('00'+Math.abs(mins)).slice(-2) + ':' + ('00'+Math.abs(secs)).slice(-2)
}else {
out = ('00' + Math.abs(hrs)).slice(-2) + ':' + ('00'+Math.abs(mins)).slice(-2) + ':' + ('00'+Math.abs(secs)).slice(-2) + '.' + ('000'+Math.abs(ms)).slice(-3)
}
if(isSmallerThenZero){
out = "-" + out
}
return out;
}
function handleUpdate() {
resp = httpGet("/api/v1/data?markRead=mark");
var data = JSON.parse(resp);
if(data.changed){
newDateObj = data.countdownGoal;
document.getElementById("incomeData").innerHTML = JSON.stringify(data)
if(data.defaultFullScreen && document.getElementById("initalDate").innerHTML.includes("true")){
enterFullscreen(document.documentElement);
document.getElementById("initalDate").innerHTML = "false"
}
if (data.mode == "clock") {
document.getElementById("timer").innerHTML = getTime();
document.getElementById("testImg").style.display = "none";
} else if (data.mode == "timer") {
const now = new Date()
const diff = data.countdownGoal - now.getTime()
countdown(
newDateObj,
function(ts) {
// console.log(ts)
if(ts.value <= 0){
document.getElementById("timer").innerHTML = ('00'+ts.hours).slice(-2) + ":" + ('00'+ts.minutes).slice(-2) + ":" + ('00'+ts.seconds).slice(-2);
}else{
document.getElementById("timer").innerHTML = "00:00:00"
}
},
countdown.HOURS|countdown.MINUTES|countdown.SECONDS);
document.getElementById("timer").innerHTML = msToTime(diff, data);
document.getElementById("testImg").style.display = "none";
} else if (data.mode == "black") {
@ -60,4 +99,12 @@ function getTime() {
return time;
}
setInterval(handleUpdate, 50);
setInterval(handleUpdate, 200);
let temp = new URLSearchParams(window.location.search).get("smaller");
if (temp == "true") {
var cssURL = '/css/smallerTextMod.css';
document.head.innerHTML +='<link rel="stylesheet" href="' + cssURL + '"/>'
}