Refactor footer scripts into default layout and enhance service worker registration with sync capabilities

This commit is contained in:
2025-03-20 11:30:49 +01:00
parent 63de9a9476
commit f1cf7f2867
2 changed files with 23 additions and 20 deletions

View File

@@ -9,10 +9,32 @@
{{ content }}
</main>
{% include footer.html %}
<script src="{{ "/assets/js/materialize.min.js" | relative_url }}"></script>
<script>
document.addEventListener('DOMContentLoaded', function() {
var sidenavElems = document.querySelectorAll('.sidenav');
var sidenavInstances = M.Sidenav.init(sidenavElems, {});
});
document.querySelectorAll("button").forEach(button => {
const href = button.getAttribute("data-href");
if (!href) return;
button.addEventListener("click", () => {
window.location.href = button.getAttribute("data-href");
});
});
</script>
<script>
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register("{{ '/assets/js/service-worker.js' | relative_url }}")
.then(() => console.log("✅ Service Worker registriert"))
.then((reg) => {
console.log("✅ Service Worker registriert");
if ('SyncManager' in window) {
reg.sync.register('cache-all-pages')
.then(() => console.log("✅ Alle Seiten werden gecached"))
.catch(err => console.error("❌ Fehler beim Sync:", err));
}
})
.catch(error => console.log("❌ Service Worker Fehler:", error));
}
</script>