23 Commits

Author SHA1 Message Date
nickpons666
b000e7f665 Corrección de búsqueda por nombre: inclusión del rol coordinador en el filtro 2026-01-31 02:23:45 -06:00
nickpons666
fefd3a8d78 Cambio de respuesta de PDF a tabla de texto en búsqueda por nombre del bot 2026-01-31 02:19:46 -06:00
nickpons666
a02e77d09f Actualización del bot de Telegram: Renombrado de botón PDF y eliminación de menú al solicitarlo 2026-01-31 02:17:53 -06:00
nickpons666
959b5e3596 Implementación de actualización instantánea de roles sin cierre de sesión 2026-01-31 02:12:51 -06:00
nickpons666
9b219c7856 Restricción de permisos para rol coordinador en asignaciones y navbar 2026-01-31 02:08:38 -06:00
nickpons666
67c4d8173f feat: Implementar rol Coordinador con permisos granulares
- Crear nuevo rol Coordinador con permisos específicos de gestión
- Modificar Auth.php para soportar isCoordinador() y requireCoordinador()
- Actualizar User.php con método getUsuariosGestion() para incluir coordinadores
- Corregir Asignacion.php para que getAyudantesPorOrden() incluya coordinadores
- Crear panel especial para coordinadores en coordinador.php
- Implementar restricciones granulares en usuarios.php
  • Coordinadores no pueden ver/editar/desactivar administradores
  • No pueden crear otros administradores (se convierte a coordinador)
  • Solo pueden gestionar ayudantes y otros coordinadores
- Actualizar navbar para mostrar rol específico con badges
- Mejorar ayudante.php para que coordinadores puedan usar navbar completo
- Añadir secciones especiales de gestión para coordinadores
- Actualizar todos los PDFs y bot de Telegram para incluir coordinadores
- Mantener retrocompatibilidad con usuarios y administradores existentes

Permisos Coordinador:
 Ver/editar usuarios y ayudantes
 Gestionar turnos y orden de rotación
 Generar turnos automáticamente
 Exportar PDFs y usar bot de Telegram
 Acceder a configuración general, logs, webhook
 Administrar otros administradores
2026-01-31 01:54:14 -06:00
nickpons666
8bd34c8ddb fix: Incluir coordinadores en todas las listas de gestión
- Crear método getUsuariosGestion() que incluye ayudantes y coordinadores
- Actualizar asignaciones_completo.php para mostrar coordinadores
- Actualizar todas las páginas de gestión para usar nuevo método
- Corregir que coordinadores aparezcan en asignaciones masivas
- Mantener consistencia en todos los módulos de administración
2026-01-31 01:18:28 -06:00
nickpons666
acc0033e63 feat: Añadir panel especial para coordinadores en ayudante.php
- Añadir sección especial para coordinadores con estadísticas y acciones rápidas
- Integrar botones de gestión directa en todas las secciones de turnos
- Permitir acceso coordinador sin redirección
- Mostrar acciones específicas según rol (admin vs coordinador vs ayudante)
- Añadir barra final de acciones para coordinadores
2026-01-31 01:05:14 -06:00
nickpons666
6a5a1d48ef feat: Crear interfaz simple de gestión y unificar vista de ayudante
- Crear versión ultra simple de admin/asignaciones.php con solo funcionalidades esenciales
- Mover asignaciones complejas a asignaciones_completo.php para acceso avanzado
- Modificar ayudante.php para permitir acceso a administradores sin redirigir
- Añadir detección automática: usuarios ven navbar simple, admins ven navbar completo
- Eliminar archivo duplicado vista-ayudante.php para evitar mantener código duplicado
- Corregir rutas BASE_PATH para compatibilidad entre archivos en /admin/ y /public/
- Añadir enlace 👥 Vista Ayudante en navbar de admin
- Mejorar experiencia de usuario con diseño limpio y minimalista
2026-01-31 00:29:01 -06:00
nickpons666
ffda892859 fix: Corregir orden de ayudantes en PDFs y bot de Telegram
- Cambiar getAyudantesActivos() por getAyudantesPorOrden() en todos los PDFs y bot
- Añadir tabla 'Turnos de Ayudantes' en ambos PDFs (ayudante y admin)
- Mostrar 4 próximas fechas para cada ayudante en orden correcto
- En PDF de ayudante: resaltar fila del usuario con badge 'Tu'
- Corregir sendPDF() y sendPDFGeneral() en bot de Telegram
- Asegurar consistencia: Ana → Esperanza → Mary → Bety → Mariela
- Sincronizar completamente web, PDFs y bot con nuevo orden de rotación
2026-01-30 22:52:32 -06:00
nickpons666
6823a5d6d3 fix: Mostrar orden correcto y asignaciones en ayudante.php
- Cambiar getAyudantesActivos() por getAyudantesPorOrden() para mostrar orden correcto
- Añadir columna 'Ayudante' en tabla de horarios para mostrar quién está asignado cada semana
- Mostrar badges con nombres de ayudantes asignados (verde para usuario actual, gris para otros)
- Añadir badge 'Tú' para identificar fácilmente al usuario actual
- Mejorar visualización de asignaciones en tabla semanal
2026-01-30 22:39:26 -06:00
nickpons666
76b0584667 fix: Corregir funcionalidad de reordenamiento y generación automática de turnos
- Añadir jQuery para resolver error 'jQuery is not defined'
- Corregir variable $db indefinida en reordenamiento de rotación
- Añadir método getDb() a clase Asignacion para acceso a base de datos
- Implementar procesamiento correcto de acción 'rotacion_automatica'
- Actualizar inputs ocultos al reordenar elementos visuales
- Añadir redirección para recargar datos actualizados después de guardar orden
- Mejorar manejo de mensajes de éxito/errores en generación automática
2026-01-30 22:30:55 -06:00
nickpons666
4c7f298acd refactor: Centralizar y corregir la comunicación con la API de Telegram
Se refactoriza toda la comunicación con la API de Telegram para solucionar un problema de latencia severa en el entorno Docker. El problema era causado por un retraso en la resolución de red.

- Se mejora la función  en  para forzar el uso de IPv4, añadir timeouts y soportar métodos GET/POST.
- Se centraliza la lógica de la API en la clase , añadiendo los métodos ,  y .
- Se modifica  para que utilice los nuevos métodos centralizados, eliminando código cURL duplicado y aplicando la solución de red.
- Se mantiene la instrumentación en  para futuros diagnósticos, según lo solicitado.
2026-01-20 20:20:59 -06:00
nickpons666
488f25b568 Envio de PDF por Telegram
- Agregado comando /pdf y boton Mi PDF en el menu
- Genera y envia automaticamente el PDF con todos los horarios y turnos
- PDF incluye: Turnos de Ayudantes, Horarios por Semana, Horarios de Apertura
2026-01-20 16:58:07 -06:00
nickpons666
96985f3d8c Exportacion a PDF de horarios y turnos
- Agregada libreria Dompdf para generar PDFs
- Creada clase PDFGenerator con metodos reutilizables
- Pagina de exportacion para ayudantes (mis-turnos.pdf)
- Pagina de exportacion para admin (reporte-admin.pdf)
- Boton Exportar PDF en pagina de ayudantes y admin
- Corregido bug en getAsignacionActual() para usar domingo como inicio de semana
2026-01-20 16:31:18 -06:00
nickpons666
230b8a8aeb Mejoras en seguridad de sesiones y pagina para cambiar contraseña
- Corregido warning de session_save_path/session_name al iniciar sesion
- CSRF ahora usa Session::init() para configuracion correcta de sesion
- Agregada pagina independiente para cambiar contraseña de ayudantes
- Boton Cambiar Contraseña en navbar de pagina de ayudantes
- Mejorada disposicion de tablas en pagina de asignaciones
2026-01-20 15:53:33 -06:00
nickpons666
05631e4a63 Mejoras de seguridad y nueva tabla de turnos para ayudantes
- Agregado sistema de protección CSRF con tokens
- Creada clase Session para gestión centralizada de sesiones
- Mejorado manejo de errores en Database (sin die())
- Refactorizado Auth para usar nueva clase Session
- Agregada validación CSRF a formularios de login y admin
- Agregada validación de roles en modelo User
- Mejorada vista de ayudante con tabla de horarios por semana
- Agregada tabla de Turnos de Ayudantes con fechas en columnas
2026-01-20 15:24:07 -06:00
nickpons666
dc8e83db6c Add interactive Docker build script 2026-01-19 17:24:37 -06:00
nickpons666
8621281203 Separate DB host and name in navbar 2026-01-19 17:23:21 -06:00
nickpons666
1fd0b5c8a7 Display navbar info stacked vertically 2026-01-19 17:22:33 -06:00
nickpons666
373e8d6715 Add database info to navbar dropdown 2026-01-19 17:19:38 -06:00
nickpons666
6a1c86d88a Add Docker configuration and fix paths 2026-01-19 17:10:54 -06:00
nickpons666
85894619d8 Primer subida completa 2026-01-19 15:20:36 -06:00