import { apiAction } from './api.js'; import { initUserPanel } from './ui-user.js'; import { mountLogoutButton, ensureFloatingLogout } from './ui-auth.js'; import { initBridgeSetupPage } from './bridge-setup-page.js'; async function ensureAuthenticated() { try { const me = await apiAction('auth.me', { method: 'GET' }); if (!me?.ok || !me?.user) { if (!window.DISABLE_AUTH_REDIRECT) { window.location.href = '/login.php'; } return false; } window.__currentUser = me.user; document.documentElement.classList.remove('auth-pending'); return true; } catch { return false; } } document.addEventListener('DOMContentLoaded', async () => { const ok = await ensureAuthenticated(); if (!ok) return; initUserPanel(); initBridgeSetupPage(); mountLogoutButton('#btn-logout', { redirect: '/login.php' }); ensureFloatingLogout({ redirect: '/login.php' }); });