A lightweight and non-intrusive GLPI plugin that enhances the ticket timeline by displaying visual status badges directly on task entries — without modifying any GLPI core files.
También disponible en español - Leer en español 📖
- 🔹 Displays visual status badges on task timeline entries
- 🔹 Three color-coded states for quick identification:
- 🔵 Information (blue)
- 🟠 To Do (orange)
- 🟢 Done (green)
- 🔹 Automatic badge updates when task status changes
- 🔹 Works for TicketTask, ProjectTask, and ITILTask
- 🔹 Fully hook-based — no core overrides
- 🔹 Zero configuration required — works out of the box
- 🔹 Multilingual support: English, Spanish, and French
- GLPI 11.0.x
- PHP 8.1+
-
Download the latest release from GitHub Releases
-
Extract and copy the folder
taskstatusinto:glpi/plugins/ -
Go to GLPI → Configuration → Plugins
-
Find Task Status Display
-
Click Install, then Enable
cd /path/to/glpi/plugins/
git clone https://github.com/JuanCarlosAcostaPeraba/glpi-taskstatus-plugin.git taskstatusThen follow steps 3-5 from above.
Once installed and enabled, status badges will automatically appear in the timeline of all tickets. No configuration required.
The plugin automatically:
- ✅ Detects task entries in the timeline
- ✅ Reads their current status
- ✅ Displays a color-coded badge with icon and label
- ✅ Updates badges when status changes via MutationObserver
![]() All task status badges displayed in timeline |
![]() Timeline view without the plugin |
![]() Information state (blue badge) |
![]() To Do state (orange badge) |
![]() Done state (green badge) |
|
The plugin uses a MutationObserver to monitor the GLPI timeline for task entries (TicketTask, ProjectTask, ITILTask). When a task is detected, it:
- Extracts the task status from DOM classes or data attributes
- Creates a color-coded badge with icon and label
- Inserts the badge into the timeline-badges container
The plugin recognizes three task states based on GLPI's Planning class:
- State 0 (Information): Blue badge with info icon
- State 1 (To Do): Orange badge with clock icon
- State 2 (Done): Green badge with check icon
When a task status changes, the MutationObserver detects the DOM modification and automatically:
- Removes the old badge
- Creates a new badge with the updated status
- Re-inserts it in the timeline
taskstatus/
├── setup.php # Plugin registration + hooks
├── plugin.xml # Plugin metadata for GLPI marketplace
├── public/
│ ├── js/
│ │ └── taskstatus.js # Frontend badge injection and updates
│ └── css/
│ └── taskstatus.css # Styling for status badges
├── locales/
│ ├── en_GB.php # English translations
│ ├── es_ES.php # Spanish translations
│ └── fr_FR.php # French translations
├── assets/
│ ├── logo.png # Plugin logo
│ └── screenshots/ # Screenshots for marketplace
└── README.md
add_css: Injects custom CSS for badge stylingadd_javascript: Injects JavaScript for badge management and MutationObservercsrf_compliant: Marks plugin as CSRF-compliant
- English (en_GB) - Default
- Spanish (es_ES)
- French (fr_FR)
Contributions are welcome! If you'd like to contribute:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Please ensure your code follows existing style conventions and test your changes thoroughly.
If you encounter any issues or have questions:
- Bug Reports: Open an issue
- Feature Requests: Open an issue
- Questions: Discussions
GPLv3+
Fully compatible with GLPI plugin licensing requirements. See the LICENSE file for details.
Developed by Juan Carlos Acosta Perabá for HUC – Hospital Universitario de Canarias.
- GLPI Development Team for the excellent GLPI platform
- All contributors who help improve this plugin
Un plugin ligero y no intrusivo para GLPI que mejora la línea de tiempo de los tickets mostrando badges de estado visuales directamente en las entradas de tareas — sin modificar ningún archivo del núcleo de GLPI.
- 🔹 Muestra badges de estado visuales en las entradas de tareas de la línea de tiempo
- 🔹 Tres estados con código de color para identificación rápida:
- 🔵 Información (azul)
- 🟠 Por hacer (naranja)
- 🟢 Hecho (verde)
- 🔹 Actualización automática de badges cuando cambia el estado de las tareas
- 🔹 Funciona con TicketTask, ProjectTask e ITILTask
- 🔹 Totalmente basado en hooks — sin modificaciones del núcleo
- 🔹 Sin configuración requerida — funciona directamente
- 🔹 Soporte multiidioma: inglés, español y francés
- GLPI 11.0.x
- PHP 8.1+
-
Descarga la última versión desde GitHub Releases
-
Extrae y copia la carpeta
taskstatusen:glpi/plugins/ -
Ve a GLPI → Configuración → Plugins
-
Busca Task Status Display
-
Haz clic en Instalar y luego en Activar
cd /ruta/a/glpi/plugins/
git clone https://github.com/JuanCarlosAcostaPeraba/glpi-taskstatus-plugin.git taskstatusLuego sigue los pasos 3-5 de arriba.
![]() Todos los badges de estado en la línea de tiempo |
![]() Vista de línea de tiempo sin el plugin |
![]() Estado Información (badge azul) |
![]() Estado Por hacer (badge naranja) |
![]() Estado Hecho (badge verde) |
|
Una vez instalado y activado, los badges de estado aparecerán automáticamente en la línea de tiempo de todos los tickets. Sin configuración requerida.
El plugin automáticamente:
- ✅ Detecta entradas de tareas en la línea de tiempo
- ✅ Lee su estado actual
- ✅ Muestra un badge con código de color con icono y etiqueta
- ✅ Actualiza los badges cuando cambia el estado mediante MutationObserver
El plugin utiliza un MutationObserver para monitorear la línea de tiempo de GLPI en busca de entradas de tareas (TicketTask, ProjectTask, ITILTask). Cuando se detecta una tarea:
- Extrae el estado de la tarea desde las clases DOM o atributos de datos
- Crea un badge con código de color con icono y etiqueta
- Inserta el badge en el contenedor timeline-badges
El plugin reconoce tres estados de tareas basados en la clase Planning de GLPI:
- Estado 0 (Información): Badge azul con icono de información
- Estado 1 (Por hacer): Badge naranja con icono de reloj
- Estado 2 (Hecho): Badge verde con icono de check
Cuando cambia el estado de una tarea, el MutationObserver detecta la modificación del DOM y automáticamente:
- Elimina el badge antiguo
- Crea un nuevo badge con el estado actualizado
- Lo reinserta en la línea de tiempo
taskstatus/
├── setup.php # Registro del plugin + hooks
├── plugin.xml # Metadatos del plugin para GLPI marketplace
├── public/
│ ├── js/
│ │ └── taskstatus.js # Inyección y actualización de badges en frontend
│ └── css/
│ └── taskstatus.css # Estilos para los badges de estado
├── locales/
│ ├── en_GB.php # Traducciones en inglés
│ ├── es_ES.php # Traducciones en español
│ └── fr_FR.php # Traducciones en francés
├── assets/
│ ├── logo.png # Logo del plugin
│ └── screenshots/ # Capturas para el marketplace
└── README.md
add_css: Inyecta CSS personalizado para estilos de badgesadd_javascript: Inyecta JavaScript para gestión de badges y MutationObservercsrf_compliant: Marca el plugin como compatible con CSRF
- Inglés (en_GB) - Por defecto
- Español (es_ES)
- Francés (fr_FR)
¡Las contribuciones son bienvenidas! Si deseas contribuir:
- Haz fork del repositorio
- Crea una rama para tu característica (
git checkout -b feature/caracteristica-increible) - Confirma tus cambios (
git commit -m 'Añade característica increíble') - Sube a la rama (
git push origin feature/caracteristica-increible) - Abre un Pull Request
Por favor asegúrate de que tu código sigue las convenciones de estilo existentes y prueba tus cambios a fondo.
Si encuentras algún problema o tienes preguntas:
- Reportar Bugs: Abrir un issue
- Solicitar Características: Abrir un issue
- Preguntas: Discusiones
GPLv3+
Totalmente compatible con los requisitos de licencia de plugins de GLPI. Consulta el archivo LICENSE para más detalles.
Desarrollado por Juan Carlos Acosta Perabá para HUC – Hospital Universitario de Canarias.
- Equipo de Desarrollo de GLPI por la excelente plataforma GLPI
- Todos los colaboradores que ayudan a mejorar este plugin




