(function () { "use strict"; // Check if the element with class 'countdown' exists on the page const countdownElement = document.querySelector('.countdown'); if (countdownElement) { function getTimeRemaining(endtime) { const total = Date.parse(endtime) - Date.parse(new Date()); const seconds = Math.floor((total / 1000) % 60); const minutes = Math.floor((total / 1000 / 60) % 60); const hours = Math.floor((total / (1000 * 60 * 60)) % 24); const days = Math.floor(total / (1000 * 60 * 60 * 24)); return { total, days, hours, minutes, seconds }; } function initializeClock(elem, endtime) { const clock = document.querySelector(elem); const daysSpan = clock.querySelector('[data-days]'); const hoursSpan = clock.querySelector('[data-hours]'); const minutesSpan = clock.querySelector('[data-minutes]'); const secondsSpan = clock.querySelector('[data-seconds]'); function updateClock() { const t = getTimeRemaining(endtime); daysSpan.innerHTML = t.days; hoursSpan.innerHTML = ('0' + t.hours).slice(-2); minutesSpan.innerHTML = ('0' + t.minutes).slice(-2); secondsSpan.innerHTML = ('0' + t.seconds).slice(-2); if (t.total <= 0) { clearInterval(timeinterval); } } updateClock(); const timeinterval = setInterval(updateClock, 1000); } let time = countdownElement.getAttribute('data-date'); if (time == undefined) { time = Date.parse(new Date()) + 15 * 24 * 60 * 60 * 1000; } const deadline = new Date(time); initializeClock('.countdown', deadline); } })();