(async () => { const timers = await fetchTimers(); console.log("timers: (start.js) " + timers); const existingPanel = document.getElementById("existing-laundry-panel"); const existingText = document.getElementById("existing-laundry-text"); if (Array.isArray(timers[1]) && timers[1].length > 0) { existingPanel.style.display = 'inherit'; if (timers.length == 1) { existingText.innerText = "You currently have another ongoing laundry. You are creating a new timer."; } else { existingText.innerText = "You currently have other ongoing laundries. You are creating a new timer."; } } const info = await information(data.machine_id); const machine = await info["machine"]; console.log(`machine is ${machine}`); const divs = [ document.getElementById("dryer1"), document.getElementById("washer1"), document.getElementById("dryer2"), document.getElementById("washer2"), ] divs[machine - 1].classList.add("machine-selected"); })(); const notif = document.getElementById("notif-panel"); const notbtn = document.getElementById("notbtn"); const startbtn = document.getElementById("startbtn"); startbtn.addEventListener("click", () => { start(); }); const urlParams = new URLSearchParams(window.location.search); data.machine_id = urlParams.get('machine'); console.log(urlParams); startUpdateMachines(); OneSignalDeferred.push(async function(OneSignal) { try { if (OneSignal.Notifications.permission) { notif.remove(); startbtn.disabled = false; } data.onesignal_subscription_id = OneSignal.User.PushSubscription["id"] ; } catch (e) { console.error("onesignal error ", e); } }); notbtn.addEventListener("click", () => requestPermission()) async function requestPermission() { console.log("Requesting permission..."); const onesignal_result = await OneSignal.Notifications.requestPermission(); if (onesignal_result) { notif.remove(); startbtn.disabled = false; } }