diff --git a/assets/js/app_simple.js b/assets/js/app_simple.js index 88c650e..5d3d2fe 100644 --- a/assets/js/app_simple.js +++ b/assets/js/app_simple.js @@ -377,6 +377,9 @@ class SimpleWhatsAppManager { const container = document.getElementById('users-table'); if (!container) return; + // Guardar datos para uso posterior + this.usersData = users; + if (users.length === 0) { container.innerHTML = 'No hay usuarios registrados'; return; @@ -834,6 +837,9 @@ class SimpleWhatsAppManager { const container = document.getElementById('templates-table'); if (!container) return; + // Guardar datos para uso posterior + this.templatesData = templates; + if (templates.length === 0) { container.innerHTML = 'No hay plantillas registradas'; return; @@ -1100,14 +1106,24 @@ class SimpleWhatsAppManager { this.log('Guardando respuesta automática'); try { + const autoresponseId = document.getElementById('autoresponse-id')?.value || ''; + const responseData = { - trigger_type: document.getElementById('autoresponse-type')?.value || 'keyword', - trigger_value: document.getElementById('autoresponse-trigger')?.value || '', + trigger_type: document.getElementById('autoresponse-trigger-type')?.value || 'keyword', + trigger_value: document.getElementById('autoresponse-trigger-value')?.value || '', response_text: document.getElementById('autoresponse-text')?.value || '', - response_type: document.getElementById('autoresponse-response-type')?.value || 'text', - is_active: document.getElementById('autoresponse-active')?.checked ? 1 : 0 + response_type: document.getElementById('autoresponse-type')?.value || 'text', + priority: document.getElementById('autoresponse-priority')?.value || 0, + template_name: document.getElementById('autoresponse-template-name')?.value || '', + menu_id: document.getElementById('autoresponse-menu-id')?.value || '', + is_active: document.getElementById('autoresponse-active')?.value === '1' ? 1 : 0 }; + // Si hay ID, es una actualización + if (autoresponseId) { + responseData.id = autoresponseId; + } + // Validar campos requeridos if (!responseData.response_text) { this.showError('El texto de respuesta es requerido'); @@ -1157,7 +1173,7 @@ class SimpleWhatsAppManager { try { const response = await this.apiCall('delete_autoresponse.php', { method: 'POST', - body: { response_id: responseId } + body: { id: responseId } }); if (response && response.success) { @@ -1440,6 +1456,50 @@ class SimpleWhatsAppManager { const bootstrapModal = new bootstrap.Modal(modal); bootstrapModal.show(); } + + async deleteUserAction(userId, userName, userPhone) { + if (!confirm(`¿Estás seguro de que quieres eliminar este usuario?\n\nUsuario: ${userName}\nTeléfono: ${userPhone}\n\nEsta acción no se puede deshacer y eliminará:\n• Todos sus mensajes\n• Su historial de conversación\n• Sus datos personales`)) { + return; + } + + this.log(`Eliminando usuario ID: ${userId}`); + + try { + const response = await this.apiCall('delete_user.php', { + method: 'POST', + body: { id: userId } + }); + + if (response && response.success) { + this.showSuccess('Usuario eliminado correctamente'); + this.loadUsers(); // Recargar la lista + } else { + this.showError(`Error eliminando usuario: ${response?.error || 'Error desconocido'}`); + } + } catch (error) { + this.showError('Error eliminando usuario: ' + error.message); + } + } + + async deleteTemplateAction(templateId) { + this.log(`Eliminando plantilla ID: ${templateId}`); + + try { + const response = await this.apiCall('delete_template.php', { + method: 'POST', + body: { id: templateId } + }); + + if (response && response.success) { + this.showSuccess('Plantilla eliminada correctamente'); + this.loadTemplates(); // Recargar la lista + } else { + this.showError(`Error eliminando plantilla: ${response?.error || 'Error desconocido'}`); + } + } catch (error) { + this.showError('Error eliminando plantilla: ' + error.message); + } + } } // Inicializar cuando el DOM esté listo @@ -1987,7 +2047,18 @@ window.viewConversation = function (userId) { // Función para editar usuario window.editUser = function (userId) { console.log('Editando usuario:', userId); - alert(`Editar usuario ${userId} - Función en desarrollo`); + + // Buscar el usuario en los datos cargados + if (window.whatsappManager && window.whatsappManager.usersData) { + const user = window.whatsappManager.usersData.find(u => u.id == userId); + if (user) { + showEditUserModal(user); + } else { + alert('Error: Usuario no encontrado'); + } + } else { + alert('Error: Datos no disponibles, recarga la página'); + } }; // Función para ver historial de usuario @@ -2009,8 +2080,11 @@ window.viewUserHistory = function (userId) {
Historial de Usuario
-

Esta funcionalidad está en desarrollo.
- Aquí se mostrará el historial completo de mensajes y actividades del usuario.

+

Para ver el historial completo de conversaciones, usa la pestaña "Conversaciones" en el menú principal.
+ Allí podrás ver todos los mensajes y el historial detallado de cada usuario.

+ + Ir a Conversaciones +
+ + + +