From f9e586b4828a2816519d7883a1b3a52173deeeaf Mon Sep 17 00:00:00 2001 From: Ochoa-Stack <195959137+Ochoa-Stack@users.noreply.github.com> Date: Thu, 6 Aug 2026 20:12:46 -0600 Subject: [PATCH 1/4] fix(navbar): ocultar iconos de sesion para invitados y agregar CTA de login Co-authored-by: Oscar Soriano Co-authored-by: Aylin Chavira Co-authored-by: Alejandro Balderrama --- backend/.env.example | 4 +-- docs/GUIA_GIT.md | 14 +++------ docs/LIMPIEZA_RESIDUALES.md | 17 +++-------- frontend/assets/css/components/_navbar.css | 6 ++++ frontend/assets/js/components/navbar-role.js | 10 +++++++ frontend/views/admin/respaldos.html | 26 +++++++++++++---- frontend/views/admin/usuarios.html | 26 +++++++++++++---- frontend/views/alertas.html | 27 +++++++++++++++--- frontend/views/comparar.html | 26 ++++++++++++++--- frontend/views/errors/404.html | 27 ++++++++++++++---- frontend/views/errors/500.html | 27 ++++++++++++++---- frontend/views/habilidades.html | 18 ++++++++++-- frontend/views/panorama.html | 26 ++++++++++++++--- frontend/views/perfil.html | 26 ++++++++++++++--- frontend/views/regiones.html | 30 ++++++++++++++++---- frontend/views/reportes.html | 30 ++++++++++++++++---- frontend/views/salarios.html | 26 ++++++++++++++--- 17 files changed, 287 insertions(+), 79 deletions(-) diff --git a/backend/.env.example b/backend/.env.example index 9b95c6a..d39bf3b 100644 --- a/backend/.env.example +++ b/backend/.env.example @@ -34,10 +34,10 @@ TRENDS_INTERVAL_HOURS=24 # CORS # Lista de orígenes permitidos separados por coma. -CORS_ORIGINS=http://localhost:5500,http://localhost:3000,http://127.0.0.1:5500 +CORS_ORIGINS=http://localhost:5500,http://localhost:3000,http://127.0.0.1:5500,http://127.0.0.1:5501 # Base URL del frontend. Este valor debe coincidir con la raíz real que sirve los archivos de frontend, y cambiará por completo al desplegar a producción. -FRONTEND_BASE_URL=http://localhost:5500/frontend +FRONTEND_BASE_URL=http://localhost:5500 # Autenticación del pipeline automatizado PIPELINE_TRIGGER_SECRET=reemplazar-por-cadena-aleatoria-segura diff --git a/docs/GUIA_GIT.md b/docs/GUIA_GIT.md index 3211378..4bc12d7 100644 --- a/docs/GUIA_GIT.md +++ b/docs/GUIA_GIT.md @@ -1,17 +1,12 @@ # Git en el dia a dia -Esta guia cubre los comandos de Git que usamos en SkillStat. No asume -conocimiento previo. Si ya dominas Git puedes usarla como referencia rapida. +Esta guia cubre los comandos de Git que usamos en SkillStat. No asume conocimiento previo. Si ya dominas Git puedes usarla como referencia rapida. ## Como funciona Git en este proyecto -Git guarda el historial de todos los cambios que hacemos al codigo. -Cada vez que guardamos un cambio con `commit` quedamos un registro de -que cambio, quien lo hizo y cuando. +Git guarda el historial de todos los cambios que hacemos al codigo. Cada vez que guardamos un cambio con `commit` quedamos un registro de que cambio, quien lo hizo y cuando. -Las ramas nos permiten trabajar en algo nuevo sin afectar lo que ya -funciona. Cuando terminamos, integramos nuestro trabajo a `develop` -a traves de un Pull Request en GitHub. +Las ramas nos permiten trabajar en algo nuevo sin afectar lo que ya funciona. Cuando terminamos, integramos nuestro trabajo a `develop` a traves de un Pull Request en GitHub. ## Los comandos que mas usamos @@ -107,5 +102,4 @@ Si queremos deshacer el ultimo commit pero conservar los cambios: git reset --soft HEAD~1 ``` -Si tenemos dudas sobre algo que no esta en esta guia lo preguntamos -antes de intentar comandos desconocidos. +Si tenemos dudas sobre algo que no esta en esta guia lo preguntamos antes de intentar comandos desconocidos. diff --git a/docs/LIMPIEZA_RESIDUALES.md b/docs/LIMPIEZA_RESIDUALES.md index 46009e1..fd13f0a 100644 --- a/docs/LIMPIEZA_RESIDUALES.md +++ b/docs/LIMPIEZA_RESIDUALES.md @@ -2,28 +2,19 @@ ## Contexto -Durante la auditoría técnica pre-Ronda 14 se detectaron cuatro archivos -no planificados en backend/ que fueron generados durante sesiones de -depuración manual y nunca formaron parte del scaffold del proyecto: +Durante la auditoría técnica pre-Ronda 14 se detectaron cuatro archivos no planificados en backend/ que fueron generados durante sesiones de depuración manual y nunca formaron parte del scaffold del proyecto: - backend/clean.py (80 líneas) - backend/clean2.py (79 líneas) - backend/clean3.py (78 líneas) - backend/test_read.py (13 líneas) -Los archivos fueron eliminados del working tree de develop durante -la sesión de diagnóstico. Esta rama los elimina formalmente del -historial mediante este registro de decisión. +Los archivos fueron eliminados del working tree de develop durante la sesión de diagnóstico. Esta rama los elimina formalmente del historial mediante este registro de decisión. ## Decisión -Se eliminan sin recuperación. No contenían lógica de aplicación, -pruebas formales ni configuración. Eran scripts ad-hoc de depuración -sin valor para el proyecto. +Se eliminan sin recuperación. No contenían lógica de aplicación, pruebas formales ni configuración. Eran scripts ad-hoc de depuración sin valor para el proyecto. ## Consecuencias -El directorio backend/ queda alineado con el scaffold original. -Cualquier utilidad de depuración futura debe crearse en backend/tests/ -o en scripts/ con nombre descriptivo y commitearse como parte del -flujo normal de desarrollo. +El directorio backend/ queda alineado con el scaffold original. Cualquier utilidad de depuración futura debe crearse en backend/tests/ o en scripts/ con nombre descriptivo y commitearse como parte del flujo normal de desarrollo. diff --git a/frontend/assets/css/components/_navbar.css b/frontend/assets/css/components/_navbar.css index 7a53834..7ba7cc3 100644 --- a/frontend/assets/css/components/_navbar.css +++ b/frontend/assets/css/components/_navbar.css @@ -248,6 +248,12 @@ width: 100%; } +.navbar__logout[hidden], +.navbar__profile-link[hidden], +.nav-drawer__logout[hidden] { + display: none; +} + @media (min-width: 768px) { .nav-drawer { display: none; diff --git a/frontend/assets/js/components/navbar-role.js b/frontend/assets/js/components/navbar-role.js index 052280c..db7622f 100644 --- a/frontend/assets/js/components/navbar-role.js +++ b/frontend/assets/js/components/navbar-role.js @@ -3,7 +3,17 @@ let user; try { user = await apiGet("/profile/me"); + document + .querySelectorAll( + ".navbar__profile-link, .navbar__logout, .nav-drawer__logout", + ) + .forEach(function (el) { + el.removeAttribute("hidden"); + }); } catch { + document.querySelectorAll("[data-guest-cta]").forEach(function (el) { + el.removeAttribute("hidden"); + }); // Si /profile/me falla (401, red, lo que sea), simplemente no se inyecta el link. Cada página ya maneja su propio guard de sesión por separado; este script solo decide visibilidad. return; } diff --git a/frontend/views/admin/respaldos.html b/frontend/views/admin/respaldos.html index 521592a..304be98 100644 --- a/frontend/views/admin/respaldos.html +++ b/frontend/views/admin/respaldos.html @@ -40,7 +40,7 @@
  • Panorama
  • -
  • Comparar
  • - Habilidades + Comparar +
  • +
  • + Habilidades
  • Salarios @@ -89,6 +93,7 @@ href="/views/perfil.html" class="navbar__profile-link" aria-label="Mi perfil" + hidden > @@ -112,9 +117,17 @@ type="button" aria-label="Cerrar sesión" data-auth-action="logout" + hidden > + @@ -129,7 +142,7 @@ > diff --git a/frontend/views/admin/usuarios.html b/frontend/views/admin/usuarios.html index e37d48f..62e5972 100644 --- a/frontend/views/admin/usuarios.html +++ b/frontend/views/admin/usuarios.html @@ -40,7 +40,7 @@
  • Panorama
  • -
  • Comparar
  • - Habilidades + Comparar +
  • +
  • + Habilidades
  • Salarios @@ -89,6 +93,7 @@ href="/views/perfil.html" class="navbar__profile-link" aria-label="Mi perfil" + hidden > @@ -112,9 +117,17 @@ type="button" aria-label="Cerrar sesión" data-auth-action="logout" + hidden > + @@ -129,7 +142,7 @@ > diff --git a/frontend/views/alertas.html b/frontend/views/alertas.html index 245f971..67e424f 100644 --- a/frontend/views/alertas.html +++ b/frontend/views/alertas.html @@ -58,9 +58,13 @@
  • Panorama
  • -
  • Comparar
  • - Habilidades + Comparar +
  • +
  • + Habilidades
  • Salarios @@ -86,6 +90,7 @@ href="/views/perfil.html" class="navbar__profile-link" aria-label="Mi perfil" + hidden > @@ -109,9 +114,17 @@ type="button" aria-label="Cerrar sesión" data-auth-action="logout" + hidden > + @@ -170,9 +183,13 @@
  • Panorama
  • -
  • Comparar
  • - Habilidades + Comparar +
  • +
  • + Habilidades
  • Salarios @@ -197,6 +214,7 @@ class="nav-drawer__logout" type="button" data-auth-action="logout" + hidden > Cerrar sesión @@ -324,6 +342,7 @@

    Alertas activas

    + diff --git a/frontend/views/comparar.html b/frontend/views/comparar.html index 19dcb42..1b1ec47 100644 --- a/frontend/views/comparar.html +++ b/frontend/views/comparar.html @@ -55,7 +55,9 @@