collinenlucy.nl/client/index.js

34 lines
1.1 KiB
JavaScript

const COOKIE_NAME = "hasRsvped";
function hasRsvped() {
const cookies = Object.fromEntries(
document.cookie.split(";").map((x) => x.trim().split("="))
);
return cookies[COOKIE_NAME] === "true";
}
function padTime(t) {
return `${t}`.padStart(2, '0');
}
function updateCountdown() {
const countdownDate = new Date("2026-05-16T14:30:00.000+02:00");
const now = new Date();
const msRemaining = countdownDate.getTime() - now.getTime();
const daysRemaining = Math.floor(msRemaining / (1000 * 60 * 60 * 24));
const hoursRemaining = Math.floor(msRemaining / (1000 * 60 * 60)) % 24;
const minutesRemaining = Math.floor(msRemaining / (1000 * 60)) % 60;
const secondsRemaining = Math.floor(msRemaining / 1000) % 60;
const countdownNode = document.getElementById("countdown");
countdownNode.innerText = `${daysRemaining} days ${padTime(hoursRemaining)}:${padTime(minutesRemaining)}:${padTime(secondsRemaining)}`;
}
window.onload = function () {
if (!hasRsvped()) {
const rsvpButton = document.querySelector(".rsvpButton");
rsvpButton.classList.remove("hidden");
}
updateCountdown();
window.setInterval(updateCountdown, 500);
};