fix(login): deshabilita auto-redirect y redirige segun rol tras login
Some checks failed
CI / lint-and-test (3.11) (push) Has been cancelled
CI / lint-and-test (3.13) (push) Has been cancelled

- login.html ya no redirige automaticamente si hay token; esto permite
  cambiar de usuario en dispositivos compartidos.
- Limpia token/empleado expirados.
- Tras login exitoso, redirige a /pos/workshop para taller/mecanico y a
  /pos/catalog para los demas roles.

Esto facilita probar el login con distintos usuarios en La Casita.
This commit is contained in:
2026-06-30 17:17:56 +00:00
parent 8ce6c398d4
commit 1ca056ad0f

View File

@@ -326,18 +326,21 @@
localStorage.setItem('pos_device_id', deviceId);
}
// Auto-redirect if already logged in with valid token
// Optional auto-redirect disabled to allow switching users on shared devices.
// Users with a valid session can navigate directly to /pos/catalog or /pos/workshop.
(function checkExistingSession() {
var token = localStorage.getItem('pos_token');
if (token && tenantId) {
try {
var payload = JSON.parse(atob(token.split('.')[1]));
if (payload.exp * 1000 > Date.now() + 30000) {
window.location.href = '/pos/catalog';
return;
if (payload.exp * 1000 <= Date.now() + 30000) {
localStorage.removeItem('pos_token');
localStorage.removeItem('pos_employee');
}
} catch(e) {}
localStorage.removeItem('pos_token');
} catch(e) {
localStorage.removeItem('pos_token');
localStorage.removeItem('pos_employee');
}
}
})();
@@ -383,7 +386,12 @@
showToast('¡Acceso concedido! Redirigiendo…');
setTimeout(function() {
window.location.href = '/pos/catalog';
var role = (result.data.employee.role || '').toLowerCase();
if (role === 'workshop' || role === 'mechanic') {
window.location.href = '/pos/workshop';
} else {
window.location.href = '/pos/catalog';
}
}, 1000);
})
.catch(function() {