Commit Graph

10 Commits

Author SHA1 Message Date
647bdfc6ae feat: versión 1.6.1 mejoras de UI y corrección de bugs
Mejoras de UX/UI:
- Mensajes de progreso persistentes durante la validación
- Estadísticas reales de 'IPs Disponibles' actualizadas post-validación
- Badge de estado muestra 'No disponible' en rojo para conflictos de ping
- Mejor distribución del formulario (checkboxes agrupados)
Correcciones:
- Corregido bug que ignoraba el límite de IPs seleccionado
- Corregido ocultamiento prematuro de indicadores de carga
- Corregido desaparición rápida de mensajes de éxito
Docs:
- Actualizado manifest a v1.6.1
- Actualizado CHANGELOG.md y README.md
2025-12-08 14:39:03 -06:00
ecee38cf96 feat: implementar sistema de validación de IPs de 4 capas v1.6.0
- Agregar validación multi-capa para garantizar IPs 100% disponibles
- Capa 1: Filtrar IPs de dispositivos registrados en UISP
- Capa 2: Filtrar IPs de servicios CRM suspendidos/finalizados (449 IPs)
- Capa 3: Validar IPs usando búsqueda de sitios con type=subscriber
- Capa 4: Verificación opcional por ping para dispositivos de terceros

Nuevos Componentes:
- src/IpValidator.php: Clase de validación por búsqueda de sitios
- Validación progresiva en frontend JavaScript
- Endpoint action=validate en public.php

Mejoras:
- CrmService.php: Filtrado mejorado de servicios suspendidos/finalizados
- IpSearchService.php: Extraer todas las IPs de ipAddressList
- Frontend: Validación progresiva de IPs con feedback visual
- Cambiar suspended=false a suspended=true en API de UISP

Correcciones:
- Corregir variable $config indefinida en handler de validación
- Corregir falsos positivos agregando parámetro type=subscriber
- Corregir IPs secundarias no detectadas
- Corregir IPs de servicios suspendidos/finalizados mostrándose disponibles

Resultados de Pruebas:
- IP 172.16.54.70 (servicio finalizado): Filtrada correctamente por capa CRM
- IP 172.16.54.58 (cliente activo): Filtrada correctamente por búsqueda de sitios
- Todas las IPs mostradas verificadas como 100% disponibles

Documentación:
- Actualizado README.md con detalles del sistema de 4 capas
- Actualizado CHANGELOG.md con notas de versión 1.6.0
- Creado walkthrough.md completo
2025-12-06 12:34:58 -06:00
ab8a60f556 feat(v1.5.1): Funcionalidad de edición en configuración avanzada
 Nuevo:
- Botón "✏️ Editar" en tabla de segmentos del editor avanzado
- Modo de edición visual con título y botón dinámicos
- Campo de segmento se deshabilita durante edición (no se puede cambiar ID)
- CRUD completo: Create, Read, Update, Delete

🔧 Mejoras:
- Función addSegmentToTable() maneja creación y actualización
- 5 nuevas funciones helper para gestión de rangos:
  * clearRangeContainers()
  * addInitialRangeWithData() / addFinalRangeWithData()
  * resetForm()
  * editSegment()
- Scroll automático al inicio del formulario al editar
- Validación de duplicados solo en modo creación
- Mensajes diferenciados ("agregado" vs "actualizado")

🎨 Interfaz:
- Botón editar con estilo azul distintivo
- Indicadores visuales claros de modo edición vs agregar
- Formulario se pre-llena automáticamente con datos del segmento

Completa la funcionalidad CRUD del panel de administración de IPs.
2025-12-01 13:20:29 -06:00
6a0e15447c fix(v1.5.0): Correcciones críticas en configuración avanzada de IPs
- Corregida inicialización de editorData que impedía cargar rangos personalizados
- Corregidos errores de escape JS que rompían botones de la interfaz
- Corregida clasificación frontend que ignoraba rangos específicos por segmento
- Agregado indicador visual de modo y logs de depuración
- Eliminada columna redundante en tabla de resultados

Resuelve problemas donde los rangos admin personalizados eran ignorados.
2025-11-27 14:40:58 -06:00
1b821410c1 git commit -m "feat: sistema de configuración avanzada de IPs administrativas por segmento (v1.5.0)
- Agregar editor visual de configuración avanzada con protección por contraseña
- Implementar rangos de IPs administrativas personalizados por segmento
- Crear AdminRangeHelper.php para procesamiento de JSON por segmento
- Agregar botón ⚙️ de acceso rápido al editor
- Implementar modal de autenticación con validación de contraseña
- Agregar fallback inteligente a rangos globales para segmentos no configurados

Configuración avanzada:
- 3 campos nuevos en manifest.json (checkbox, JSON textarea, password)
- Editor visual completo con formularios dinámicos
- Agregar/eliminar segmentos y rangos en tiempo real
- Tabla de segmentos configurados con acciones
- Validación de cambios sin guardar
- Mensaje de éxito al guardar configuración

Backend:
- AdminRangeHelper.php: getSegmentLimits(), isAdminIpCustom(), validateConfigJson()
- IpSearchService.php: soporte para rangos personalizados con fallback
- Handler POST para guardar configuración JSON

Frontend:
- ~250 líneas de JavaScript para gestión del editor
- CSS responsive con soporte para temas claro/oscuro
- Interfaz amigable para usuarios no técnicos

Lógica de fallback:
- Checkbox desactivado → rangos globales para todos
- Checkbox activado + segmento en JSON → rangos del JSON
- Checkbox activado + segmento NO en JSON → fallback a rangos globales

Archivos creados:
- src/AdminRangeHelper.php

Archivos modificados:
- manifest.json: 3 campos nuevos, versión 1.5.0
- src/IpSearchService.php: lógica de fallback
- public.php: editor completo, modal, JavaScript
- CHANGELOG.md: entrada v1.5.0
- README.md: documentación de nuevos campos"
2025-11-27 13:00:40 -06:00
1117b2ade2 feat: agregar modo claro/oscuro y optimizaciones móviles (v1.3.3)
- Agregar sistema de modo claro/oscuro con botón toggle (☀️/🌙)
- Implementar persistencia de tema con localStorage
- Optimizar tabla para móviles (3 columnas en lugar de 5)
- Cambiar límite por defecto a 5 IPs para búsquedas más rápidas
- Mejorar tipografía de direcciones IP (más grande y negrita)
- Actualizar documentación y versión a 1.3.3

Características del modo claro/oscuro:
- Botón flotante en esquina superior derecha
- Paleta de colores profesional para tema claro
- Transiciones suaves entre temas
- Preferencia guardada automáticamente

Mejoras móviles:
- Columna "Tipo de IP" oculta en móviles
- Badge de tipo mostrado bajo la dirección IP
- Mejor distribución de espacio (40% IP, 35% Estado, 25% Acción)
- Fuentes y padding optimizados

Archivos modificados:
- public.php: Sistema de temas, optimizaciones móviles, límite por defecto
- CHANGELOG.md: entrada v1.3.3
- README.md: documentación de nuevas características
- manifest.json: actualización de versión a 1.3.3
2025-11-27 09:09:58 -06:00
fd47782cbe feat: agregar botón dinámico para cancelar verificación por ping (v1.3.2)
- Agregar botón de cancelar que aparece durante el proceso de verificación por ping
- Permitir a los usuarios detener la verificación manteniendo resultados parciales
- Mejorar responsividad móvil para alineación de checkboxes
- Actualizar documentación y versión a 1.3.2

Características:
- Botón de cancelar dinámico con feedback visual
- Preserva IPs ya verificadas al cancelar
- Se oculta automáticamente al completar o cancelar
- Útil para modo de verificación "Todas las IPs"

Archivos modificados:
- public.php: UI y lógica del botón de cancelar
- CHANGELOG.md: entrada v1.3.2
- README.md: documentación de función de cancelar
- manifest.json: actualización de versión a 1.3.2
2025-11-26 21:38:25 -06:00
48024291c4 Característica: verificación de ping progresiva y asincrónica con procesamiento por lotes y agregar opciones de UI para límites de ping y ocultar IP's de administrador. 2025-11-26 15:33:55 -06:00
8549bab24b Característica: se implementó la verificación por ping opciones para mejorar la precisión de las direcciones IP disponibles. 2025-11-26 14:23:07 -06:00
0be508e749 característica: Se introdujeron Endpoints API REST para búsqueda y verificación de IP con clasificación de tipo IP y eliminar el script de IP heredado. 2025-11-26 12:16:49 -06:00