<?php
$version = "v2.4";
echo "<footer id='muestraversion'><a href='" . (defined('SITIO_CARPETA') ? SITIO_CARPETA : '') . "/views/actualizaciones' style='color:light-dark(var(--negro), white); text-decoration: none;'>" . $version . "</a></footer>";
/** 
 * Changelog
 * @version 2.4 (26w13d)
 * Novedades:
 *  - Nuevo apartado donde se puede mostrar el perfil, cambiar correo electrónico, teléfono y constraseña del usuario actual
 *  - Al modificar hora ahora resta si había aplicado el cron, se queda registrado el cambio y lo vuelve a calcular la modificación, esta ultima también queda registrado
 *  - Los días no trabajados cuentan también como horas negativas en las horas acumuladas en el cron
 *  - Cambiado nombres enlaces de vacaciones a "Sol. Vacaciones" y "Festivos y vac." para mayor comprensión
 *  - Permitir modificar y eliminar festivos, y eliminar solicitudes de vacaciones
 *  - Calendario de vacaciones y festivos
 *  - El sonidito de mal suena también al no introducir el pin
 *  - Mejoras de diseño en algunos campos de formulario
 *  - Agregado una comprobación que comprueba si al fichar tarda mucho y sale mensaje de que cierre la aplicación y vuelva a probar
 *  - Nuevo ajuste: Sistema de tipo de registro al fichar
 *  - Nuevo ajuste: Mostrar desde donde fichan, muestra svg al lado de la hora de los registros
 *  - Se ha implementado más medidas de seguridad de la aplicación:
 *      - Bloqueo de tiempo a la hora de fichar e intentos de fuerza bruta
 *      - Protección contra ataque CSRF
 *      - Comprobaciones admin en algunas páginas
 * 
 * Correcciones:
 *  - Al exportar por empleado y grupo, con la opción de mostrar días vacíos salen también en el pdf, antes solo estaba por fechas
 *  - Error al buscar en solicitudes de vacaciones [SQL] Error 3 -> Illegal mix of collations (utf8mb4_bin,NONE) and (binary,IGNORABLE) for operation 'like'
 *  - Si no seleccionabas empleado permitía intentar fichar
 *  - Preparar error de 1 hora obligatorio para que no salga error sql en la tabla y en el calendario
 *  - Al exportar si tenías puesto nombre de empleado pero elegías grupo salian las exportaciones del empleado en vez del grupo
 *  - Al exportar por fecha y motivo no filtraba bien
 *  - Correcciones visuales
 *  - En ocasiones no se guardaba en el historial de aplicaciones en horas acumuladas como histórico
 *  - En el calendario se muestren en fines de semana las vacaciones y festivos
 *  - Al crear empleado no guardaba bien el horario
 *  - Correcciones de modo oscuro en algunas zonas
 *  - Corrección error al cerrar mes con el sistema de incidencias
 *  - Corrección que al cerrar sesión no tenía en cuenta la carpeta de la instalación
 *  - Correcciones del actualizador
 *  
 * @version 2.3.3 (26w11a)
 * Crea logs al fichar
 * Corrección del title que se superpone en la nota de modificación al ponerse encima
 * Ocultado el botón de fichar si el empleado está de baja
 * Corrección de cuando un empleado se incorpora de una baja pueda fichar el día de la incorporación
 * 
 * 
 * @version 2.3.2 (26w10b)
 * En el sistema de autonicio ahora permite iniciar con un usuario específico
 * Corrección al fichar con latitud y longitud que no se guardaba correctamente
 * 
 * @version 2.3.1 (26w10a)
 * Al exportar csv exporta solo empleado si se ha introducido empleado
 * Al exportar a pdf comprueba si está la opción Utilizar minutos sin conversión y la respeta, también muestra total de horas excedidas
 * Corregido que no dejaba subir archivos
 * Arreglado que no funcionaba bien el filtro de busqueda en horas acumuladas
 * Corregido que el inspector no pueda entrar en aprobaciones
 * El inspector no puede crear, modificar ni eliminar motivos
 * 
 * @version 2.3 (26w08a)
 * Ahora se puede agregar logo al fichador y personalizarlo
 * En el actualizador se ha agregado documents y pdf como carpetas protegidas, para no eliminar documentos existntes
 * Cambio de contador de días naturales en solicitudes de vacaciones y puesto un texto para mayor comprensión
 * Agregada opción que los empleados puedan verse las vacaciones entre si
 * Calendario anual
 * En horas acu puede añadir o quitar de forma masiva
 * Actualizador comprueba también si es null y si tiene descripción y lo aplica también
 * Opción de ver minutos reales y división entre 60, si no existia sale un aviso de recalcular minutos
 * Indicativo de cuanto lleva en esa semana
 * 
 * @version 2.2.2 (26w06d)
 * Corregido las tareas cron para que se ajuste con plesk
 * Ajuste en fecha para que por defecto salga el fin de mes
 * Corrección del diseño en móvil para la tabla de registros
 * 
 * @version 2.2.1 (26w06c)
 * Ajuste de minutos de tolerancia y minutos acumulables puedan establecer mínimo 1 minuto
 * Filtro de fecha en la tabla de registros mejorado, permitiendo búsqueda de solo un campo de fecha
 * Añadido etiquetas a los campos
 * Comprobaciones si no tienen empleados e indica de crear, en las páginas: exportar registros, aprobaciones, horas acumuladas, solicitudes de vacaciones, festivos, empleados
 * Corrección del actualizador que al agregar una tabla no agregaba autorincrement
 * Corrección en la tarea cron que no contaba si los empleados tenian horas acumuladas NULL
 * Corrección de que no se veían algunas vacaciones de los empleados
 * Corrección de un problema que no permitía subir archivos con extenxión correcta pero la extenxión estaba en mayúsculas
 * Corrección que cuando se cierre la sesión por inactividad compruebe la carpeta también por si está instalado en una carpeta
 * Corrección de seguridad para impedir visualización de documentos si no está iniciada la sesión
 * Corrección de un fallo que impedía aprobar una nota si se había aliminado el registro
 * Algunas correcciones de estilos
 * 
 * @version 2.2 (26w05b)
 * Detecta si el empleado tiene horario grupal y no sale la notificación de que no tiene horario y comprueba esas horas con la puntualidad sino no sale lo de puntual
 * Sale el horario del grupo en el empleado si no tiene horario definido el empleado
 * Sistema de notas se mejora con que el empleado puede solicitar una nota para el registro
 * Corrección a comprobar horas acumuladas y en horas acumuladas salen todos los empleados incluso horas null o 0 por si el sistema no calcula bien
 * Aumentado de 6 a 10 registros de horas
 * Motivos ahora por defecto pero ignorará las columnas de resolución y modificar_horas, cuando se modifique o cree preguntará el motivo, se guardará en la tabla de solicitudes_modificaciones_registros
 * Nuevo ajuste de horas de más y menos en total horas tanto tabla como calendario y al exportar
 * Página de ver historial de horas acumuladas y apartado para ver horas acumuladas que ha añadido el sistema cron
 * Corrección sistema de incidencias
 * Retoques de horas impares
 * Corrección en la página de actualizaciones que no dejaba entrar
 * Pequeños cambios estéticos
 * Corrección de errores y mejoras
 * 
 * @version 2.1.3 (26w01e)
 * Corrección que no se mostraba no mostrar en aprobaciones al modificar registro
 * Mejora en la búsqueda de empleados eliminados tanto en la tabla como calendario
 * Cuando detecta que hay empleados eliminados a la hora de crear empleado te deja vincularlo y adquiere su id
 * Nueva opción de mostrar nombres de los días de la semana en la tabla de registros
 * Añadido un easter egg
 * 
 * @version 2.1.2 (26w01d)
 * Corrección del buscador por apellidos en la tabla de fichajes
 * Corrección de exportación en pdf que no mostraba bien los registros de los empleados cuando buscabas por apellidos
 * Añadido lo de búsqueda por apellidos en vista calendario y otros sitios
 * Agregado tooltips
 * Corrección del error que ocurría si activabas subcontratado y lo desactivas al crear empelado
 * Corrección pdf que se cortaban algunos nombres largos
 * Mostrar apellidos en el fichador como opción
 * Comprobaciones iniciales: sin horario asignado, registros impares y usuario sin configurar
 * Actualizador ahora es capaz de actualizar el tipo de una columna de la bbdd
 * Enlace en la versión que te lleva a la página de actualizaciones
 * Corrección que al revertir no añada ni quite registros
 * 
 * @version 2.1.1 (26w01c)
 * Solución al bug de que cuando fichaba lo hacía por nombre y no id de empleado
 * Búsqueda por apellido y también sale en el exportar pdf y csv
 * Arreglado fallo de imagen de prueba en ajustes
 * Mostrar logo en negro en el pdf
 * 
 * @version 2.1 (25w53e)
 * Agregado lo de sistema de horarios nocturnos de la versión anterior.
 * Nueva opción en ajustes, mostrar apellidos en la tabla y busqueda por apellidos.
 * Se ha implementado las solicitudes de vacaciones, el empleado solicita y el admin las acepta o rechaza
 * Nueva opción en ajustes que permite buscar por apellidos en la tabla de registros
 * Exportar pueden exportar por grupos
 * Se ha agregado un fondo para el panel de administración
 * Sistema de actualizaciones, el usuario podrá actualizar la aplicación, se hace una copia por si acaso y se puede restaurar, esta copia no elimina ningún registro.
 * Se ha quitado el bloqueo del modo inspector en los registros
 * Se ha cambiado la tabla de los registros para que no sea una tabla para mayor velocidad, también se ha limitado por defecto 100 líneas.
 * Se ha creado un instalador para próximas instalaciones, se descarga en la api de actualizaciones.
 * 
 * @version 2.0.2 (25w52b)
 * Agregado archivo comprobar_registros_inspector a la carpeta cron y actualizado, agregadas tareas cron.
 * 
 * @version 2.0.1 (25w51a)
 * Corrección que al activar PERMITIR_OCULTAR_APROBACIONES no se mostraba la opción al modificar registro.
 * 
 * @version 2.0 (25w50c)
 * Esta es una versión mayor y se han realizado muchas mejoras importantes:
 * ===Importantes===
 * Refactorización del sistema de archivos para una mayor legibilidad y control
 * Se han agregado nuevas funciones al functions y en el base js
 * Estilos CSS renovados con un estilo glassmorphic
 * Agregada página de configuración para que el admin pueda gestionar algunas cosas
 * Agregado sistema de grupos
 * Agregada configuración de mostrar días vacíos al exportar y es funcional
 * Agregado incidencias
 * Agregado horas acumuladas de los empleados y que se puedan canjear
 * Agregado vista calendario
 * Agregado que los empleados tengan sesiones
 * Creado solicitudes de modificaciones de registro
 * sql más robusto, no handsake ni muchas conexiones a la vez, solo una por aplicación, latencia más baja.
 * Creado aprobaciones de modificaciones de registros: aprobado, pendiente y desaprobado
 * Fichar con la sesión iniciada el empleado
 * Fichar ahora es con ajax y comprueba si tienes internet
 * reCaptcha v3 ahora es una opción
 * Agregado transiciones de animaciones de entrada
 * En ajustes comprobación de los inputs numéricos si son válidos para guardar registro
 * Creado tarea cron que comprueba las horas acumuladas del día anterior
 * Sistema de archivos para que puedan subir las nóminas por ejemplo
 * fichador masivo, opción en ajustes
 * Al exportar solo exporta los registros activos
 * Creada configuraciones para ocultar el título en el fichador, permitir que los empleados cambien el tema y autofichar al introducir el pin
 * Nuevas opciones en ajustes como: sonidos al fichar, también he agregado comprobación del enfoque en el caso de que falle y otras comprobaciones a la hora de fichar
 * Al crear registro muestra los empleados en un datalist.
 * Al crear y modificar registro desde el calendario, no muestra el empleado ni fecha ya que es evidente donde hace el click para añadirlo o modificarlo
 * dialog modificar un registro unificado en un archivo, que había dos, uno para tabla y otro para calendario
 * dialog eliminar registro se ha unificado, ya que habían dos, uno para tabla y otro para calendario
 * Ahora se pueden subir las nóminas de forma aparte que los documentos
 * Ahora los festivos se pueden ver por defecto sin el sistema de incidencias activa
 * Documentación
 * Vista calendario puede verse las modificaciones de los registros, se ha corregido un fallo al mostrar los días inhábiles, y se ha optimizado el calendario
 * Cuando se sube documento se selecciona el apartado de documentos para ver lo que ha subido. También en esta página indica los formatos permitidos y tamaño
 * Ahora al fichar desde la sesión iniciada pide confirmación para evitar fichajes accidentales.
 * Al fichar por defecto se pone cargando hasta que ficha, se bloquea el botón de fichar y cuando ficha se desbloquea
 * Al crear registro comprueba si ya existe un registro activo con ese empleado y fecha
 * Empleados, fusionado archivo de crear/actualizar
 * Agregando motivos
 * Agregado sistema de notas
 * Agregado sistema de autoinicio de sesión
 * Comprobar que el usuario no exista en los empleados, entonces aviso
 * Cuando un empleado está de baja no se muestra en el fichador
 * Filtros de búsqueda por id de usuario
 * En la lista de empleado ahora muestra estos datos y si el horario está o no definido
 * Mejorado iniciar sesión
 * Preparado para meter la apliación dentro de carpetas
 * Mostrar horas acumuladas de los empleados y arreglos de esto.
 * Sistema de autocierre de sesión, por defecto 30 minutos
 * Cambiado carpeta ima a img
 * Mensaje bienvenida
 * Opción exportar los días vacíos activada por defecto
 * Horas acumuladas puedes agregar una nota al canjear
 * Comprobador en el fichador si el pin está vacío
 * Eliminado archivo app/forms/fichar
 * 
 * ===BBDD===
 * Tabla usuarios tipo de usuario es ahora string (dev, admin, empleado, inspector)
 * También cambiada nombre de la tabla registro por registros
 * Tabla registros y registros_inspector columna nueva que se llama activo boolean 1 activo, 0 eliminado no mostrar
 * Tabla registros_eliminados se ha eliminado de la bbdd
 * Tabla de registros se ha eliminado la columna de mensaje
 * Cambiado en la bbdd tabla empleados, hora1 y hora2 pueden ser nulos
 * Creada tabla de configuraciones
 * Agregada tabla de configuraciones de los usuarios
 * Tabla de usuarios, agregado id primaria y quitado que sea primario el usuario y que este sea unica
 * Tabla trabajadores horas_acu=0
 * Tabla mesescerrados cambiado a meses_cerrados y en esta id autoincrement, tabla copia_cierre_mes creada
 * Tabla motivos, id es primaria, int y autoincrement y columna motivo cambiado a nombre
 * Tabla trabajadores grupo cambiado a id_grupo, por defecto 1 (UPDATE `trabajadores` SET `id_grupo`=1), no nullable
 * Se ha creado en grupos la columna dias_trabaja_semana, son los días que se trabaja para ese grupo si es flexible semanal
 * Tabla trabajadores horas_acu cambiado a decimal 10,6. También cambiado en copia_cierre_mes, en este se ha creado id auto increment y id_cierre no es primaria
 * Creada tabla historial_horas_acumuladas.
 * Creada tabla bajas_empleado
 * Tabla dias_inhabiles agregada columna id_motivo null, y eliminada columna id_centro, id puesto primaria y autoincrement
 * Tabla trabajadores agregada columnas apellidos, telefono, email y fecha_alta
 * Tabla registros, agregada columna nota
 * Tabla usuarios, columna usuarios cambiado a usuario, y agregada columna id_empleado, para enlazar con los empleados
 * Tabla trabajadores cambiado de nombre a empleados
 * Tabla filtro de busqueda, agregada columna id_usuario
 * filtro_busqueda nombre cambiado cotejamiento utf8mb4_unicode_ci y puede ser null
 * Creada tabla aprobaciones_modificaciones_registros, horas originales y las modificadas y si ha aprobado cambio o está pendiente
 * Añadido a la tabla empleados tipo de contrato y horas, agregado tipo de contrato y horas de contrato, observaciones, subcontratado.
 * Creada tabla de documentos, para así mostrar solo los subidos desde la aplicación y puedan establecer un alias.
 * Tabla historial_horas_acumuladas agregada columna notas
 * Tabla registros_inspector columna nueva llamada bloqueado, para que si está bloqueado no se permita modificaciones
 * 
 * 
 * ===CORRECCIONES===
 * Corrección en el fichador si no le daba a aceptar localización no dejaba fichar
 * Correcciones al exportar total páginas y total horas
 * Correcciones en la tabla de registros mostrar las modificaciones
 * Corrección que al actualizar empleado se cambiase la contraseña sin haberla cambiado
 * Corrección de errores para cerrar sesión por inactividad.
 * Correcciones para el modo inspector cuando esté activo
 * Corrección del sistema inspector que no registraba bien las horas en el modo inspector si estaba activado
 * Corrección que no se mostraba bien las horas inspector si el SISTEMA_INSPECTOR estaba activado
 * Corrección mostraba hora impar cuando era 00:00:00 en la hora inicial de entrada
 * Corrección que no mostraba la hora modificada correctamente
 * Corrección en aprobaciones que no se veía bien las horas modificadas
 * Correcciones cuando el programa está dentro de una carpeta.
 * Correcciones al exportar y modo inspector y empleado
 * Corrección al mostrar modificaciones en la tabla de registros
 * Corrección en el fichador para que muestre la última hora correctamente y se ha optimizado la lógica
 * Solución a un bug que no mostraba bien la hora en el fichador de cada empleado, cuando estaba la opción de mostrar última hora en el fichador.
 * Corrección nueva lógica reCAPTCHA Entreprise
 * Corregido algunas cosas del htaccess
 * Corrección de errores menores
 * 
 *
 * @version 1.5 (25w34b)
 * Creado sistema de horarios nocturnos
 * Corrección de errores y mejoras
 * Cuando se eliminan empleados, hay posibilidad de verlo en el historial con el buscador (opción)
 * 
 * @version 1.4.10 (25w13d)
 * Corrección de errores.
 * 
 * @version 1.4.9 (25w13c)
 * Creado nuevo apartado para que el usuario normal puede gestionar los registros del inspector.
 * 
 * @version 1.4.8 (25w13b)
 * Corrección de errores.
 * 
 * @version 1.4.7 (25w11b)
 * Mejora de seguridad en .htaccess
 * 
 * @version 1.4.6 (25w10d)
 * Al exportar pdf, si el nombre de usuario es demasiado largo lo ajusta.
 * Al exportar pdf si el horario teórico no está activado se ajusta mejor la tabla.
 * Agregado conf de tamaño imagen en pdf.
 * 
 * @version 1.4.5 (25w10a)
 * Creado log fallo recaptcha.
 * 
 * @version 1.4.4 (25w09c)
 * Cambiada lógica del archivo comprobar_registros_inspector.
 * 
 * @version 1.4.3 (25w09a)
 * Corrección modo inspector sincro cron.
 * 
 * @version 1.4.2 (25w08f)
 * Corrección de que al buscar registros no direccionaba correctamente.
 * 
 * @version 1.4.1 (25w08d)
 * Se ha añadido registro log de cuando pin es incorrecto.
 * 
 * @version 1.4 (25w08b)
 * Se ha incluido overrides en los archivos.
 * Los overrides sirven para reemplazar un archivo existente por otro con variaciones para no alterar el core.
 * Agregrado archivo iniciar-sesion para que redireccione a iniciar_sesion por si se escribe mal.
 * Pequeñas correcciones.
 * 
 * @version 1.3.9 (25w03e)
 * Ahora sale una advertencia antes de eliminar un empleado.
 * 
 * @version 1.3.8 (25w02e)
 * Arreglo cuando el modo inspector está activo y el modo modificar registros no, la tabla no mostraba correctamente.
 * 
 * @version 1.3.7 (25w02d)
 * Al fichar, en el modo inspector solo arregle del día anterior si tiene registro a través de tarea cron.
 * Se han corregido algunas cosas.
 * Se han eliminado funciones obsoletas.
 * 
 * @version 1.3.6 (25w02c)
 * En el pdf que no muestre Horario teórico si no está activado.
 * 
 * @version 1.3.5 (25w02b)
 * En el fichador detecta si no tiene fichaje inspector y si no tiene copia el normal al inspector.
 * 
 * @version 1.3.4 (25w01e)
 * Se ha movido total horas más a la derecha.
 * Corrección al crear registros.
 * Corrección errores.
 * Cuando está el SISTEMA_INSPECTOR activado Y el SISTEMA_CAMBIO_HORARIO_REGULAR activado,
 * se respeta el horario si el empleado no tiene un horario regular.
 * 
 * @version 1.3.3 (25w01d)
 * Ahora se pueden exportar los registros a csv.
 * 
 * @version 1.3.2 (24w51e)
 * Se ha añadido configuración de mostrar registro de horas en el fichador y localización
 * Implementaciones de localización y horario asignado
 * 
 * @version 1.3 (24w47d)
 * Esta versión se ha incorporado muchas mejoras:
 * -Eliminación de código basura tanto php,css y js.
 * -Se han optimizado algunas funciones.
 * -Agregado archivo de configuración que permite activar y desactivar parámetros de la aplicación.
 * -Eliminado por completo la insercción de font awesome por la biblioteca, se han inclustado por svg.
 * -Eliminación de archivos basura.
 * -Mejoras visuales significativas.
 * -Pequeñas mejoras en la bbdd.
 * -Se ha separado las clases flex en un archivo aparte.
 * -Sistema de notificaciones se ha renovado la interfaz y ahora con emojis
 * 
 */
