Загрузка данных


document.addEventListener("DOMContentLoaded", () => {
    let timeLeft;
    let timerId = null;

    const display = document.getElementById("display");
    const input = document.getElementById("seconds-input");
    const startBtn = document.getElementById("start-btn");
    const stopBtn = document.getElementById("stop-btn");
    const resetBtn = document.getElementById("reset-btn");

    function formatTime(seconds) {
        const mins = Math.floor(seconds / 60);
        const secs = seconds % 60;
        return `${mins.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;
    }

    function updateDisplay() {
        display.textContent = formatTime(timeLeft);

        if (timeLeft <= 0) {
            clearInterval(timerId);
            timerId = null;
            display.classList.add("finished");
            alert("Время вышло!");
        }
    }

    startBtn.onclick = () => {
        if (timerId) return;

        if (!timeLeft) {
            timeLeft = parseInt(input.value);
        }

        if (isNaN(timeLeft) || timeLeft <= 0) {
            alert("Введите корректное количество секунд!");
            return;
        }

        display.classList.remove("finished");

        timerId = setInterval(() => {
            timeLeft--;
            updateDisplay();
        }, 1000);
    };

    stopBtn.onclick = () => {
        clearInterval(timerId);
        timerId = null;
    };

    resetBtn.onclick = () => {
        clearInterval(timerId);
        timerId = null;
        timeLeft = 0;
        display.textContent = "00:00";
        display.classList.remove("finished");
        input.value = "";
    };
});