// ================================ // UTILIDADES DE AUTENTICACIÓN // ================================ /** Devuelve el token JWT o null si no hay sesión. */ function getToken() { return localStorage.getItem("token"); } /** Devuelve el objeto usuario guardado en sesión, o null. */ function getUsuario() { const u = localStorage.getItem("usuario"); return u ? JSON.parse(u) : null; } /** * Verifica que el usuario esté autenticado. * Si no lo está, redirige a login.html y devuelve null. */ function verificarAuth() { if (!getToken()) { window.location.href = "login.html"; return null; } return getUsuario(); } /** Cierra la sesión eliminando los datos locales y redirige al login. */ function cerrarSesion() { localStorage.removeItem("token"); localStorage.removeItem("usuario"); window.location.href = "login.html"; } /** * Muestra el nombre del usuario y el botón de cerrar sesión en el header. * Llama a esta función después de cargar el header. */ function mostrarSesionEnHeader() { const usuario = getUsuario(); const contenedor = document.getElementById("header-sesion"); if (!contenedor) return; if (usuario) { contenedor.innerHTML = ` 👤 ${usuario.nombre} `; } else { contenedor.innerHTML = ` Iniciar sesión `; } }