From f2fbe0e8c1f1ec785994967e0963f2a1a9aafe9b Mon Sep 17 00:00:00 2001 From: Samuel Zielke Date: Sun, 13 Jul 2025 02:32:50 +0200 Subject: [PATCH] =?UTF-8?q?BugFix:=20-=20Timer=20Pause=20auch=20merken=20n?= =?UTF-8?q?ach=20App=20Schlie=C3=9Fen=20-=20Timer=20Farbe=20bei=20Pause=20?= =?UTF-8?q?unver=C3=A4ndert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/static/app/js/timer.js | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/app/static/app/js/timer.js b/app/static/app/js/timer.js index 320e186..ab24022 100644 --- a/app/static/app/js/timer.js +++ b/app/static/app/js/timer.js @@ -37,7 +37,8 @@ function timerIsReset() { function timerIsPause() { document.getElementById('startTimer').classList.remove('d-none') document.getElementById('pauseTimer').classList.add('d-none') - document.getElementById('timerDisplay').style.color = 'rdb(43,100,110)' + document.getElementById('resetTimer').classList.remove('d-none') + document.getElementById('timerDisplay').style.color = 'rgb(43,100,110)' } @@ -64,6 +65,8 @@ pauseButton.addEventListener('click', () => { elapsedTime = Math.floor((Date.now() - savedStartTime) / 1000); // Berechne die vergangene Zeit } localStorage.setItem('elapsedTime', elapsedTime); // Speichere die vergangene Zeit + // localStorage.removeItem('startTime'); // wichtig, damit beim Reload nicht weitergezählt wird + console.log("Gespeicherte-Vergange Zeit: " + localStorage.getItem('elapsedTime')) } }); @@ -113,11 +116,24 @@ function startTimer(startTime) { // Überprüfen, ob ein Timer beim Laden der Seite bereits läuft window.addEventListener('load', () => { + const savedElapsedTime = parseInt(localStorage.getItem('elapsedTime')) || 0; const savedStartTime = localStorage.getItem('startTime'); - elapsedTime = parseInt(localStorage.getItem('elapsedTime')) || 0; - if (savedStartTime && !isRunning) { + + console.log("Vorher Gespeicherte Zeit vergangen: " + savedElapsedTime) + + if (savedElapsedTime > 0) { + // Timer war pausiert → Nicht starten, nur Zeit anzeigen + elapsedTime = savedElapsedTime; + // updateTimerDisplay(elapsedTime); + displayTime(savedElapsedTime) + timerIsPause() + + console.log("Vergangene Zeit > 0 && Timer wurde auf Pause gesetzt") + + isRunning = false; + } else if (savedStartTime && !isRunning) { + // Timer war aktiv → weiterlaufen lassen startTimer(parseInt(savedStartTime)); - timerIsRunning(); isRunning = true; } }); \ No newline at end of file