Commit Graph
23 Commits
Author SHA1 Message Date
Lizandro GuarnizoandClaude Sonnet 4.6 7b599b28ef fix(turnero): bacterióloga sin token va al dashboard, no a lugar_id=1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-28 11:55:30 -05:00
Lizandro GuarnizoandClaude Sonnet 4.6 fa591873a9 fix(auth): redirigir admins/supervisores al dashboard del turnero tras login
login.php y index.php enviaban a v=recepcion a cualquier usuario con el
módulo turnero que no fuera bacteriólogo, incluyendo superadmin, admin
y supervisor. Esto causaba que al cerrar sesión y volver a entrar, el
admin aterrizaba en recepción en vez del dashboard.

Ahora:
- bacteriologo → lugar_id=1
- superadmin/admin/supervisor → v=dashboard
- recepcionista/otros → v=recepcion (comportamiento previo correcto)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-28 09:30:38 -05:00
Lizandro GuarnizoandClaude Sonnet 4.6 88fd0e4151 fix(turnero): login detecta dispositivo por token antes de buscar por IP
La detección de tablet fija solo buscaba por IP; tablets con token
configurado no hacían match y caían al redirect de rol (recepcion).
Ahora busca primero por cookie turnero_token y como fallback por IP.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-28 08:16:37 -05:00
Lizandro GuarnizoandClaude Sonnet 4.6 e41663cff0 fix(turnero): bacteriologo inicia en lugar_id=1 en lugar de dashboard
El rol bacteriologo iba a v=dashboard al hacer login. dashboard.php solo
redirige automáticamente si la IP está registrada como dispositivo; sin
IP registrada, la bacterióloga se quedaba en el dashboard sin usar.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-28 08:14:54 -05:00
Lizandro Guarnizo deb74a1f9e fix(login): bacteriologo redirige a v=dashboard para que App.php lo intercepte correctamente 2026-07-27 07:40:12 -05:00
Lizandro Guarnizo 8dadf0ba7a fix(login): bacteriologo redirige a lugar en vez de recepcion al iniciar sesion 2026-07-27 07:08:15 -05:00
Lizandro GuarnizoandClaude Sonnet 4.6 003d16b6a2 turnero: auto-redirigir a desk/lugar asignado sin mostrar selector
- authenticateUser incluye turnero_lugar_id en la sesión
- login.php redirige con desk_id/lugar_id si el usuario tiene lugar fijo (sin necesitar IP)
- recepcion.php redirige con desk_id si la sesión tiene turnero_lugar_id, evitando el modal de selección

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-09 10:17:48 -05:00
Lizandro GuarnizoandClaude Sonnet 4.6 8760b685ad feat(turnero): dispositivos por IP, firmas, formularios y muestras prolongadas
- login.php: detectar dispositivo por IP al autenticar y redirigir al lugar asignado
- dashboard.php / lugar.php / recepcion.php: bloquear acceso por dispositivo (IP→lugar)
- lugar.php: modal firma profesional pre-guardada; compact 2-col en iframe; botón WA
  solo cuando el formulario requiere firma del paciente
- ver_formulario_enviado.php: modo compact tablet, auto-save borrador (merge), firma
  profesional en 1 clic, Muestras Prolongadas (countdown + Finalizar), auto_profesional
  pre-fill desde sesión, fecha→fecha_hoy en campos de toma/recepción
- get_consentimientos.php: añadir requiere_firma_paciente para controlar botón WA
- save_firma_profesional.php: API para guardar firma pre-configurada del profesional
- migrations: turnero_dispositivos, admin_users.firma_svg, clon VIH F-LAB-05 para turnero

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-07 21:58:52 -05:00
Lizandro GuarnizoandClaude Sonnet 4.6 ea0de4d487 fix: página de inicio coherente con cada rol al iniciar sesión
BD: home_page asignado a roles que lo tenían NULL:
  - recepcionista → /erp.php?m=turnero&v=recepcion
  - supervisor    → /lab_dashboard.php
  - operador_bot  → /index.php
  - readonly      → /lab_ordenes.php

login.php: fallback mejorado por módulos cuando home_page no aplica
  (turnero → recepcion, lab_dashboard → dashboard, etc.)

index.php: redirige recepcionistas y roles sin whatsapp a su página
  correcta si por algún motivo llegan al panel de WhatsApp.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 01:52:56 -05:00
Lizandro Guarnizo 79ce470168 Update login.php 2026-04-17 00:08:54 -05:00
Lizandro Guarnizo 51b10faa82 Update login.php 2026-04-17 00:07:10 -05:00
Lizandro Guarnizo af32e65176 Update login.php 2026-04-16 23:57:02 -05:00
Lizandro Guarnizo a4746d4842 Update login.php 2026-04-16 23:52:33 -05:00
Lizandro Guarnizo 0164c51c1a up 2026-04-16 23:07:53 -05:00
Lizandro Guarnizo 31b79a5a62 feat: rol lab_readonly con acceso exclusivo a ordenes y domicilios (solo lectura)
- lab_domicilios.php: sidebar filtrado por hasModule()
- lab_ordenes.php: sidebar filtrado por hasModule()
- login.php: redirige a lab_domicilios.php si módulos son [lab_domicilios, lab_ordenes]
- migration: elimina lab_dashboard y lab_pacientes del rol lab_readonly
- DB producción: rol lab_readonly queda con lab_domicilios(read) + lab_ordenes(read)
2026-04-02 11:18:12 -05:00
Lizandro Guarnizo d726319b0a feat: rol formularios_readonly con acceso exclusivo a lab_formularios
- login.php: redirige a lab_formularios.php si el único módulo es lab_formularios
- lab_formularios.php: sidebar filtra links por hasModule() según el rol
- migration: permiso write en lab_formularios para formularios_readonly
- DB: eliminado lab_dashboard de formularios_readonly (solo lectura de resultados)
2026-04-02 10:43:56 -05:00
Lizandro Guarnizo db469b2134 up 2026-03-10 18:42:51 -05:00
Lizandro Guarnizo 1aae148396 up 2026-02-03 21:30:55 -05:00
Lizandro Guarnizo e96f507a06 up 2026-01-28 03:09:52 -05:00
Lizandro Guarnizo 99bedaa5a6 up 2026-01-22 10:33:16 -05:00
lizandrogd 45a11032f5 mejoras 2026-01-21 08:28:54 -05:00
Lizandro Guarnizo dd36ed6fe0 up 2026-01-12 11:06:43 -05:00
lizandrogd ce12ac2cce w 2025-11-18 20:26:36 -05:00