From 781f17ab77434c7ccd96738c0b641977402a0703 Mon Sep 17 00:00:00 2001 From: Samuel Zielke Date: Tue, 10 Sep 2024 00:16:30 +0200 Subject: [PATCH] Timer: Add Buttons and Function && StayLogIn when checked --- app/static/app/css/custom.css | 4 +- app/static/app/images/pause.png | Bin 0 -> 18245 bytes app/static/app/images/play.png | Bin 0 -> 17996 bytes app/static/app/images/refresh.png | Bin 0 -> 6398 bytes app/static/app/images/settings.png | Bin 0 -> 10649 bytes app/static/app/images/stop.png | Bin 0 -> 18406 bytes app/static/app/js/serviceworker.js | 19 ++----- app/static/app/js/timer.js | 77 +++++++++++++++++++++++++++++ app/templates/app/base.html | 8 ++- app/templates/app/home.html | 37 ++++++++++---- app/templates/app/login.html | 18 ++++++- 11 files changed, 135 insertions(+), 28 deletions(-) create mode 100644 app/static/app/images/pause.png create mode 100644 app/static/app/images/play.png create mode 100644 app/static/app/images/refresh.png create mode 100644 app/static/app/images/settings.png create mode 100644 app/static/app/images/stop.png create mode 100644 app/static/app/js/timer.js diff --git a/app/static/app/css/custom.css b/app/static/app/css/custom.css index 9d124b6..6e0d3e7 100644 --- a/app/static/app/css/custom.css +++ b/app/static/app/css/custom.css @@ -33,8 +33,8 @@ } #header-color-block { - border-bottom-left-radius: 2rem; - border-bottom-right-radius: 2rem; + border-bottom-left-radius: 3rem; + border-bottom-right-radius: 3rem; height: 7vh; } diff --git a/app/static/app/images/pause.png b/app/static/app/images/pause.png new file mode 100644 index 0000000000000000000000000000000000000000..c29798e8a577871c8259fa4a77259347c1b4fcf4 GIT binary patch literal 18245 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 literal 0 HcmV?d00001 diff --git a/app/static/app/images/play.png b/app/static/app/images/play.png new file mode 100644 index 0000000000000000000000000000000000000000..b308694a412be37001ad94a9c440ac2c96bd874d GIT binary patch literal 17996 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 F699>9eSiP} literal 0 HcmV?d00001 diff --git a/app/static/app/images/refresh.png b/app/static/app/images/refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..3776c259bb271f2f0c855090888c4b3867967b66 GIT binary patch literal 6398 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 Y=^$n7?WRKc@9#lLPF=QA+C21s0NK~C4FCWD literal 0 HcmV?d00001 diff --git a/app/static/app/images/settings.png b/app/static/app/images/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..8988b5cf1af014facc3aea029ee5310e2685e977 GIT binary patch literal 10649 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 { -// this.skipWaiting(); -// event.waitUntil( -// caches.open(staticCacheName) -// .then(cache => { -// return cache.addAll(filesToCache); -// }) -// ) -// }); self.addEventListener("install", event => { this.skipWaiting(); event.waitUntil( caches.open(staticCacheName) .then(cache => { - return fetch('/app') - .then(response => cache.put('/app', new Response(response.body))); + return fetch('/app/home') + .then(response => cache.put('/app/home', new Response(response.body))); }) ) }); @@ -46,7 +35,7 @@ self.addEventListener("fetch", event => { return response || fetch(event.request); }) .catch(() => { - return caches.match('app'); + return caches.match('app/home'); }) ) }); \ No newline at end of file diff --git a/app/static/app/js/timer.js b/app/static/app/js/timer.js new file mode 100644 index 0000000..593d6a8 --- /dev/null +++ b/app/static/app/js/timer.js @@ -0,0 +1,77 @@ +let timerInterval; +const timerDisplay = document.getElementById('timerDisplay'); +const secondsDisplay = document.getElementById('secondsDisplay'); +const startButton = document.getElementById('startTimer'); +const resetButton = document.getElementById('resetTimer'); +const pauseButton = document.getElementById('pauseTimer'); + +// Funktion zum Anzeigen der Zeit +function displayTime(seconds) { + const hours = Math.floor(seconds / 3600); + const minutes = Math.floor((seconds % 3600) / 60); + const secs = seconds % 60; + timerDisplay.textContent = + String(hours).padStart(2, '0') + ":" + + String(minutes).padStart(2, '0'); + secondsDisplay.textContent = + ":" + + String(secs).padStart(2, '0'); +} + +function timerIsRunning() { + document.getElementById('startTimer').classList.add('d-none') + document.getElementById('pauseTimer').classList.remove('d-none') + document.getElementById('resetTimer').classList.remove('d-none') + document.getElementById('timerDisplay').style.color = 'rgb(131,169,96)' +} + +function timerIsReset() { + document.getElementById('startTimer').classList.remove('d-none') + document.getElementById('pauseTimer').classList.add('d-none') + document.getElementById('resetTimer').classList.add('d-none') + document.getElementById('timerDisplay').style.color = 'black' +} + +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)' +} + +// Timer starten und Startzeit im localStorage speichern +startButton.addEventListener('click', () => { + const startTime = Date.now(); + localStorage.setItem('startTime', startTime); + timerIsRunning(); + startTimer(startTime); +}); + +// Timer zurücksetzen und Speicher leeren +resetButton.addEventListener('click', () => { + clearInterval(timerInterval); + localStorage.removeItem('startTime'); + timerIsReset(); + displayTime(0); +}); + +pauseButton.addEventListener('click', () => { + +}) + +// Timer-Funktion, die die vergangene Zeit seit dem Start berechnet +function startTimer(startTime) { + clearInterval(timerInterval); // Vorherigen Timer stoppen, falls vorhanden + timerInterval = setInterval(() => { + const elapsedSeconds = Math.floor((Date.now() - startTime) / 1000); + displayTime(elapsedSeconds); + }, 1000); +} + +// Überprüfen, ob ein Timer beim Laden der Seite bereits läuft +window.addEventListener('load', () => { + const savedStartTime = localStorage.getItem('startTime'); + if (savedStartTime) { + startTimer(parseInt(savedStartTime)); + timerIsRunning(); + } +}); \ No newline at end of file diff --git a/app/templates/app/base.html b/app/templates/app/base.html index 1a8fb66..5bc1d07 100644 --- a/app/templates/app/base.html +++ b/app/templates/app/base.html @@ -16,8 +16,14 @@
-
+
+ + Settings + + + Settings +
diff --git a/app/templates/app/home.html b/app/templates/app/home.html index c867dbe..d22d228 100644 --- a/app/templates/app/home.html +++ b/app/templates/app/home.html @@ -1,4 +1,5 @@ {% extends 'app/base.html' %} +{% load static %} {% block content %}
@@ -49,12 +43,20 @@

Timer

-

00:00h

+
+

00:00

+
+ play + play + play +
+ +
-

Aktivitäten

+

Aktivitäten

@@ -85,4 +87,21 @@ + + {% endblock %} diff --git a/app/templates/app/login.html b/app/templates/app/login.html index 5d08eda..25c3eb0 100644 --- a/app/templates/app/login.html +++ b/app/templates/app/login.html @@ -24,7 +24,7 @@
- +
@@ -43,6 +43,22 @@