'Método no permitido']); exit; } try { $input = json_decode(file_get_contents('php://input'), true); if (!$input) { http_response_code(400); echo json_encode(['error' => 'Datos inválidos']); exit; } $name = trim($input['name'] ?? ''); $templateName = trim($input['whatsapp_name'] ?? $input['template_name'] ?? ''); $languageCode = $input['language'] ?? $input['language_code'] ?? 'es'; $category = $input['category'] ?? 'utility'; // Validaciones if (empty($name)) { http_response_code(400); echo json_encode(['error' => 'El nombre es requerido']); exit; } if (empty($templateName)) { http_response_code(400); echo json_encode(['error' => 'El nombre de la plantilla de WhatsApp es requerido']); exit; } // Verificar si ya existe $db = Database::getInstance(); $existing = $db->fetch( "SELECT id FROM message_templates WHERE name = :name OR template_name = :template_name", ['name' => $name, 'template_name' => $templateName] ); if ($existing) { http_response_code(400); echo json_encode(['error' => 'Ya existe una plantilla con ese nombre']); exit; } // Crear la plantilla $templateId = $db->insert('message_templates', [ 'name' => $name, 'template_name' => $templateName, 'language_code' => $languageCode, 'category' => $category, 'status' => 'pending', // Siempre inicia como pendiente 'created_at' => date('Y-m-d H:i:s') ]); if ($templateId) { echo json_encode([ 'success' => true, 'message' => 'Plantilla creada correctamente. Estado: Pendiente de aprobación por WhatsApp.', 'id' => $templateId, 'note' => 'La plantilla debe ser aprobada en WhatsApp Business Manager antes de poder usarse.' ]); } else { http_response_code(500); echo json_encode(['error' => 'Error creando la plantilla']); } } catch (Exception $e) { error_log("Error in save_template.php: " . $e->getMessage()); http_response_code(500); echo json_encode(['error' => 'Error interno del servidor: ' . $e->getMessage()]); } ?>