140 lines
6.1 KiB
HTML
140 lines
6.1 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="es">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Test Modal Plantillas - WhatsApp Bot</title>
|
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
|
|
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
|
|
<link href="./assets/css/styles.css" rel="stylesheet">
|
|
</head>
|
|
<body>
|
|
<div class="container py-5">
|
|
<div class="row">
|
|
<div class="col-md-8 mx-auto">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h5><i class="fas fa-test-tube"></i> Prueba de Modal de Plantillas</h5>
|
|
</div>
|
|
<div class="card-body">
|
|
<p>Haz clic en el botón para probar el modal de crear plantilla:</p>
|
|
|
|
<button class="btn btn-primary" onclick="showCreateTemplateModal()">
|
|
<i class="fas fa-plus"></i> Nueva Plantilla
|
|
</button>
|
|
|
|
<button class="btn btn-info ms-2" onclick="testBootstrap()">
|
|
<i class="fas fa-check"></i> Test Bootstrap
|
|
</button>
|
|
|
|
<div class="mt-3">
|
|
<h6>Log de Debug:</h6>
|
|
<div id="debug-log" class="bg-light p-3 rounded" style="height: 200px; overflow-y: auto; font-family: monospace; font-size: 0.8rem;">
|
|
<!-- Los mensajes aparecerán aquí -->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Modal de Crear Plantilla -->
|
|
<div class="modal fade" id="createTemplateModal" tabindex="-1">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h5 class="modal-title">📝 Nueva Plantilla de WhatsApp</h5>
|
|
<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
|
|
</div>
|
|
<div class="modal-body">
|
|
<form id="template-form">
|
|
<div class="mb-3">
|
|
<label class="form-label">Nombre descriptivo *</label>
|
|
<input type="text" class="form-control" id="template-name" required placeholder="ej: Bienvenida Cliente">
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-label">Nombre en WhatsApp *</label>
|
|
<input type="text" class="form-control" id="template-whatsapp-name" required placeholder="ej: welcome_customer">
|
|
</div>
|
|
<div class="alert alert-info">
|
|
<strong>⚠️ Importante:</strong> Este es un modal de prueba.
|
|
</div>
|
|
</form>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Cancelar</button>
|
|
<button type="button" class="btn btn-primary">Guardar Plantilla</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
|
|
<script>
|
|
const debugLog = document.getElementById('debug-log');
|
|
|
|
function addLog(message) {
|
|
const timestamp = new Date().toLocaleTimeString();
|
|
debugLog.innerHTML += `[${timestamp}] ${message}\n`;
|
|
debugLog.scrollTop = debugLog.scrollHeight;
|
|
console.log(message);
|
|
}
|
|
|
|
function testBootstrap() {
|
|
addLog('🧪 Probando Bootstrap...');
|
|
if (typeof bootstrap !== 'undefined') {
|
|
addLog('✅ Bootstrap está disponible');
|
|
addLog('📦 Versión detectada: ' + (bootstrap.Modal ? 'Modal disponible' : 'Modal no disponible'));
|
|
} else {
|
|
addLog('❌ Bootstrap NO está disponible');
|
|
}
|
|
}
|
|
|
|
function showCreateTemplateModal() {
|
|
addLog('🔵 Intentando abrir modal de crear plantilla...');
|
|
|
|
const modalElement = document.getElementById('createTemplateModal');
|
|
if (!modalElement) {
|
|
addLog('❌ No se encontró el modal createTemplateModal');
|
|
alert('Error: No se encontró el modal de crear plantilla');
|
|
return;
|
|
}
|
|
|
|
addLog('✅ Modal encontrado');
|
|
|
|
try {
|
|
// Limpiar el formulario
|
|
const form = document.getElementById('template-form');
|
|
if (form) {
|
|
form.reset();
|
|
addLog('✅ Formulario limpiado');
|
|
}
|
|
|
|
// Verificar si Bootstrap está disponible
|
|
if (typeof bootstrap !== 'undefined') {
|
|
addLog('✅ Usando Bootstrap modal');
|
|
const modal = new bootstrap.Modal(modalElement);
|
|
modal.show();
|
|
addLog('✅ Modal abierto con Bootstrap');
|
|
} else {
|
|
addLog('⚠️ Bootstrap no disponible, usando modal manual');
|
|
// Fallback manual
|
|
modalElement.style.display = 'block';
|
|
modalElement.classList.add('show');
|
|
addLog('✅ Modal abierto manualmente');
|
|
}
|
|
|
|
} catch (error) {
|
|
addLog('❌ Error al abrir modal: ' + error.message);
|
|
alert('Error al abrir el modal: ' + error.message);
|
|
}
|
|
}
|
|
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
addLog('📄 Página cargada');
|
|
testBootstrap();
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |