diff --git a/backend/static/js/pages/diary.js b/backend/static/js/pages/diary.js index 356d87c..0bb4f05 100644 --- a/backend/static/js/pages/diary.js +++ b/backend/static/js/pages/diary.js @@ -118,9 +118,14 @@ window.Page_diary = (() => { _container.querySelectorAll('.diary-picker-card').forEach(el => { el.addEventListener('click', async () => { const id = parseInt(el.dataset.dogId); - App.setActiveDog(id); - // onDogChange() wird durch setActiveDog → _notifyDogChange() aufgerufen - // → lädt Diary direkt + if (id === _appState.activeDog?.id) { + // Bereits aktiver Hund → direkt Diary laden + _offset = 0; _entries = []; + await _renderDiary(); + } else { + App.setActiveDog(id); + // onDogChange() → _renderDiary() via _notifyDogChange() + } }); }); } diff --git a/backend/static/js/pages/health.js b/backend/static/js/pages/health.js index 09885c1..2214c12 100644 --- a/backend/static/js/pages/health.js +++ b/backend/static/js/pages/health.js @@ -96,8 +96,16 @@ window.Page_health = (() => { `; _container.querySelectorAll('.diary-picker-card').forEach(el => { - el.addEventListener('click', () => { - App.setActiveDog(parseInt(el.dataset.dogId)); + el.addEventListener('click', async () => { + const id = parseInt(el.dataset.dogId); + if (id === _appState.activeDog?.id) { + // Bereits aktiver Hund → direkt Health laden + _data = {}; + await _renderHealth(); + } else { + App.setActiveDog(id); + // onDogChange() → _renderHealth() via _notifyDogChange() + } }); }); } diff --git a/backend/static/sw.js b/backend/static/sw.js index 49d268f..3801d8e 100644 --- a/backend/static/sw.js +++ b/backend/static/sw.js @@ -3,7 +3,7 @@ Offline-Cache + Push Notifications ============================================================ */ -const CACHE_VERSION = 'by-v5'; +const CACHE_VERSION = 'by-v6'; const CACHE_STATIC = `${CACHE_VERSION}-static`; // Diese Dateien werden beim Install gecacht (App Shell)