Files
timelaps/templates/base.html
2026-04-19 18:31:47 +03:00

48 lines
1.5 KiB
HTML

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{% block title %}BerryFlow | Timelapse Manager{% endblock %}</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<style>
.main-content { min-height: 80vh; padding: 20px 0; }
</style>
<script>
const getStoredTheme = () => localStorage.getItem('theme')
const setStoredTheme = theme => localStorage.setItem('theme', theme)
const getPreferredTheme = () => {
const storedTheme = getStoredTheme()
if (storedTheme) return storedTheme
return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'
}
const setTheme = theme => {
document.documentElement.setAttribute('data-bs-theme', theme)
}
setTheme(getPreferredTheme())
window.addEventListener('DOMContentLoaded', () => {
document.getElementById('theme-toggle').addEventListener('click', () => {
const theme = getStoredTheme() === 'dark' ? 'light' : 'dark'
setStoredTheme(theme)
setTheme(theme)
})
})
</script>
</head>
<body>
{% include 'inc/_navbar.html' %}
<div class="container main-content">
{% block content %}
{% endblock %}
</div>
{% include 'inc/_footer.html' %}
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>