Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions harvester-app/src/framework/utils/scripts/iniciarSesion.js
Original file line number Diff line number Diff line change
Expand Up @@ -90,14 +90,17 @@ async function manejarInicioSesion() {
// Reiniciar verificación periódica después del login exitoso
await ipcRenderer.invoke('reiniciar-verificacion-periodica');

const rutaInicio = `${rutaBase}src/framework/vistas/paginas/inicio/inicio.ejs`;
// Guardar bandera para saber que vienes de login
localStorage.setItem('cargando-desde-login', 'true');

// Redirigir a pantallaCarga.ejs en vez de inicio.ejs directamente
const rutaPantallaCarga = `${rutaBase}src/framework/vistas/paginas/pantallaCarga.ejs`;
try {
const vista = await ipcRenderer.invoke('precargar-ejs', rutaInicio,{Seccion: 'Inicio', Icono: 'Casa', permisos: listaPermisos});
const vista = await ipcRenderer.invoke('precargar-ejs', rutaPantallaCarga, { rutaBase, permisos: listaPermisos });
window.location.href = vista;
} catch (err) {
return ('Error al cargar vista:', err);
}

} else {
mostrarAlerta('Verifica tus datos', respuesta.mensaje, 'warning');
}
Expand Down
55 changes: 35 additions & 20 deletions harvester-app/src/framework/utils/scripts/pantallaCarga.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,37 @@

const { verificarToken } = require(`${rutaBase}/src/backend/servicios/verificarToken`); // Importar la función verificarToken
const { verificarPermisos } = require(`${rutaBase}/src/backend/servicios/verificarPermisos`); // Importar la función verificarPermisos
const { verificarToken } = require(`${rutaBase}/src/backend/servicios/verificarToken`);
const { verificarPermisos } = require(`${rutaBase}/src/backend/servicios/verificarPermisos`);
const { ipcRenderer } = require('electron');

/**
* Evento que se dispara cuando el contenido del DOM ha sido completamente cargado.
* Verifica la validez del token almacenado y redirige según corresponda.
*/
document.addEventListener('DOMContentLoaded', async () => {
const token = obtenerToken(); // Llamamos a la función para obtener el token al cargar la página

try {
const desdeLogin = localStorage.getItem('cargando-desde-login') === 'true';

if (desdeLogin) {
// Solo mostrar loader y redirigir sin verificar token/permiso
setTimeout(async () => {
localStorage.removeItem('cargando-desde-login');
const permisos = JSON.parse(localStorage.getItem('permisos') || '[]');
const rutaInicio = `${rutaBase}src/framework/vistas/paginas/inicio/inicio.ejs`;
try {
localStorage.setItem('seccion-activa', 'inicio');
const vista = await ipcRenderer.invoke('precargar-ejs', rutaInicio, { Seccion : 'Inicio', Icono : 'Casa', permisos});
window.location.href = vista;
} catch {
// Si ocurre un error al cargar inicio, redirigir a iniciarSesion
const rutaIniciarSesion = `${rutaBase}src/framework/vistas/paginas/iniciarSesion.ejs`;
const vista = await ipcRenderer.invoke('precargar-ejs', rutaIniciarSesion);
window.location.href = vista;
}
}, 2000);
return;
}

const token = obtenerToken(); // Llamamos a la función para obtener el token al cargar la página

// Verificar si el token es válido
const tokenValido = await verificarToken(token);

Expand All @@ -27,28 +48,22 @@ document.addEventListener('DOMContentLoaded', async () => {
localStorage.setItem('seccion-activa', 'inicio');
const vista = await ipcRenderer.invoke('precargar-ejs', rutaInicio, { Seccion : 'Inicio', Icono : 'Casa', permisos});
window.location.href = vista;
} catch (err) {
return ('Error al cargar vista:', err);
} catch {
const rutaIniciarSesion = `${rutaBase}src/framework/vistas/paginas/iniciarSesion.ejs`;
const vista = await ipcRenderer.invoke('precargar-ejs', rutaIniciarSesion);
window.location.href = vista;
}

} else {
const rutaIniciarSesion = `${rutaBase}src/framework/vistas/paginas/iniciarSesion.ejs`;
try {
const vista = await ipcRenderer.invoke('precargar-ejs', rutaIniciarSesion);
window.location.href = vista;
} catch (err) {
return ('Error al cargar vista:', err);
}
const vista = await ipcRenderer.invoke('precargar-ejs', rutaIniciarSesion);
window.location.href = vista;
}
} catch {
// En caso de error, mostrar la pantalla de carga y luego redirigir a inicio de sesión
// Si ocurre cualquier error, redirigir a iniciarSesion
const rutaIniciarSesion = `${rutaBase}src/framework/vistas/paginas/iniciarSesion.ejs`;
try {
const vista = await ipcRenderer.invoke('precargar-ejs', rutaIniciarSesion);
window.location.href = vista;
} catch (err) {
return ('Error al cargar vista:', err);
}
const vista = await ipcRenderer.invoke('precargar-ejs', rutaIniciarSesion);
window.location.href = vista;
}
});

Expand Down
Loading