Files
Web-Password/templates/base.html
Florian Walther 0e7f3be529
All checks were successful
Docker Release Build / push_to_registry (push) Successful in 51s
design updates
2026-02-08 00:24:00 +01:00

65 lines
2.2 KiB
HTML

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ block "title" . }}Passwort-Generator{{ end }}</title>
<link rel="icon" href="/static/key.png" type="image/png">
<link rel="stylesheet" href="/static/style.css">
<script>
document.addEventListener('DOMContentLoaded', function() {
const root = document.documentElement;
const savedTheme = localStorage.getItem('theme');
const themeToggle = document.getElementById('theme-toggle');
// Setze das Theme basierend auf localStorage oder Systemeinstellung
if (savedTheme === 'dark') {
root.classList.add('dark');
} else if (savedTheme === 'light') {
root.classList.remove('dark');
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
root.classList.add('dark');
}
// Toggle-Button-Logik
themeToggle.addEventListener('click', function() {
if (root.classList.contains('dark')) {
root.classList.remove('dark');
localStorage.setItem('theme', 'light');
} else {
root.classList.add('dark');
localStorage.setItem('theme', 'dark');
}
});
// Systemtheme-Änderungen abhören
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', function(e) {
if (!localStorage.getItem('theme')) {
e.matches ? root.classList.add('dark') : root.classList.remove('dark');
}
});
});
</script>
{{ block "head" . }}{{ end }}
</head>
<body>
<button id="theme-toggle">🌓</button>
{{ block "body" . }}{{end}}
<!-- <footer>Version: {{getAppVersion}} | made with golang and ♥️ {{ block "footer" . }}{{ end }}</footer> -->
<footer>
<div class="footer-container">
<div class="footer-item">
Passwörter generiert: <span id="global-counter">{{getPassCount}}</span>
</div>
<div class="footer-item">
Version: {{getAppVersion}}
</div>
<div class="footer-item">
made with golang and ♥️
</div>
</div>
</footer>
</body>
</html>