Files
oib d497492186 feat: Overhaul client-side navigation and clean up project
- Implement a unified SPA routing system in nav.js, removing all legacy and conflicting navigation scripts (router.js, inject-nav.js, fix-nav.js).
- Refactor dashboard.js to delegate all navigation handling to the new nav.js module.
- Create new modular JS files (auth.js, personal-player.js, logger.js) to improve code organization.
- Fix all navigation-related bugs, including guest access and broken footer links.
- Clean up the project root by moving development scripts and backups to a dedicated /dev directory.
- Add a .gitignore file to exclude the database, logs, and other transient files from the repository.
2025-07-28 16:42:46 +02:00

29 lines
935 B
JavaScript

// static/auth-ui.js — navigation link and back-button handlers
import { showSection } from './nav.js';
// Data-target navigation (e.g., at #links)
export function initNavLinks() {
const linksContainer = document.getElementById('links');
if (!linksContainer) return;
linksContainer.addEventListener('click', e => {
const a = e.target.closest('a[data-target]');
if (!a || !linksContainer.contains(a)) return;
e.preventDefault();
const target = a.dataset.target;
if (target) showSection(target);
const burger = document.getElementById('burger-toggle');
if (burger && burger.checked) burger.checked = false;
});
}
// Back-button navigation
export function initBackButtons() {
document.querySelectorAll('a[data-back]').forEach(btn => {
btn.addEventListener('click', e => {
e.preventDefault();
const target = btn.dataset.back;
if (target) showSection(target);
});
});
}