<?php
require_once __DIR__ . '/../../includes/session_check.php';
require_once __DIR__ . '/../../includes/db.php';

// --- Lógica para el Mensaje de Bienvenida ---
try {
    $pdo->exec("
        CREATE TABLE IF NOT EXISTS telegram_welcome_messages (
            id INT AUTO_INCREMENT PRIMARY KEY,
            chat_id BIGINT NOT NULL UNIQUE,
            welcome_message TEXT,
            is_active BOOLEAN NOT NULL DEFAULT TRUE,
            updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
        );
    ");
} catch (PDOException $e) {
    die("Error al verificar la tabla de bienvenida: " . $e->getMessage());
}

// --- Lógica para los Ajustes Generales ---

// Manejar el envío de formularios
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // Guardar Mensaje de Bienvenida
    if (isset($_POST['save_welcome_message'])) {
        $welcomeMessage = $_POST['welcome_message'] ?? '';
        $isActive = isset($_POST['is_active']) ? 1 : 0;
        $chatId = '-1002578350881'; // Manteniendo el ID de chat original para esta función

        try {
            $stmt = $pdo->prepare("
                INSERT INTO telegram_welcome_messages (chat_id, welcome_message, is_active)
                VALUES (?, ?, ?)
                ON DUPLICATE KEY UPDATE welcome_message = ?, is_active = ?;
            ");
            $stmt->execute([$chatId, $welcomeMessage, $isActive, $welcomeMessage, $isActive]);
            $successMessage = "¡Configuración de bienvenida guardada con éxito!";
        } catch (PDOException $e) {
            $errorMessage = "Error al guardar la configuración de bienvenida: " . $e->getMessage();
        }
    }

    // Guardar Ajustes Generales (Grupo por defecto)
    if (isset($_POST['save_general_settings'])) {
        $defaultGroupId = $_POST['default_announcement_group'] ?? '';
        try {
            $stmt = $pdo->prepare("INSERT INTO settings (setting_key, setting_value) VALUES (?, ?) ON DUPLICATE KEY UPDATE setting_value = ?");
            $stmt->execute(['telegram_default_announcement_group', $defaultGroupId, $defaultGroupId]);
            $successMessage = "¡Ajustes generales guardados con éxito!";
        } catch (PDOException $e) {
            $errorMessage = "Error al guardar los ajustes generales: " . $e->getMessage();
        }
    }
}

// --- Obtener datos para mostrar en la página ---

// Configuración del Mensaje de Bienvenida
$stmt_welcome = $pdo->prepare("SELECT * FROM telegram_welcome_messages WHERE chat_id = ?");
$stmt_welcome->execute(['-1002578350881']);
$welcomeConfig = $stmt_welcome->fetch(PDO::FETCH_ASSOC);
if (!$welcomeConfig) {
    $welcomeConfig = [
        'welcome_message' => '¡Bienvenido/a {user_name} a nuestro grupo! Esperamos que disfrutes tu estancia.',
        'is_active' => true
    ];
}

// Grupos de Telegram para el selector
$stmt_groups = $pdo->query("SELECT name, platform_id FROM recipients WHERE platform = 'telegram' AND type = 'channel' ORDER BY name ASC");
$telegramGroups = $stmt_groups->fetchAll(PDO::FETCH_ASSOC);

// Configuración del grupo por defecto
$stmt_settings = $pdo->prepare("SELECT setting_value FROM settings WHERE setting_key = ?");
$stmt_settings->execute(['telegram_default_announcement_group']);
$defaultGroupSetting = $stmt_settings->fetchColumn();

$pageTitle = 'Configuración de Telegram';
require_once __DIR__ . '/../../templates/header.php';
?>

<div class="container-fluid">
    <h1 class="mt-4" data-translate="true">Configuración de Telegram</h1>

    <?php if (isset($successMessage)): ?>
        <div class="alert alert-success" data-translate="true"><?= htmlspecialchars($successMessage) ?></div>
    <?php endif; ?>
    <?php if (isset($errorMessage)): ?>
        <div class="alert alert-danger" data-translate="true"><?= htmlspecialchars($errorMessage) ?></div>
    <?php endif; ?>

    <!-- Card para Mensaje de Bienvenida -->
    <div class="card shadow-sm mb-4">
        <div class="card-header"><h5 class="mb-0" data-translate="true">Gestionar Mensaje de Bienvenida</h5></div>
        <div class="card-body">
            <form method="POST">
                <div class="mb-3">
                    <label for="welcome_message" class="form-label" data-translate="true">Mensaje de Bienvenida</label>
                    <textarea class="form-control" id="welcome_message" name="welcome_message" rows="5"><?= htmlspecialchars($welcomeConfig['welcome_message']) ?></textarea>
                    <div class="form-text" data-translate="true">
                        Puedes usar <code>{user_name}</code> y <code>{chat_title}</code>.
                    </div>
                </div>
                <div class="form-check form-switch mb-3">
                    <input class="form-check-input" type="checkbox" id="is_active" name="is_active" <?= $welcomeConfig['is_active'] ? 'checked' : '' ?>>
                    <label class="form-check-label" for="is_active" data-translate="true">Activar mensaje de bienvenida</label>
                </div>
                <button type="submit" name="save_welcome_message" class="btn btn-primary">
                    <i class="bi bi-save-fill me-1"></i> <span data-translate="true">Guardar Mensaje de Bienvenida</span>
                </button>
            </form>
        </div>
    </div>

    <!-- Card para Ajustes Generales -->
    <div class="card shadow-sm mb-4">
        <div class="card-header"><h5 class="mb-0" data-translate="true">Ajustes de Comandos</h5></div>
        <div class="card-body">
            <form method="POST">
                <div class="mb-3">
                    <label for="default_announcement_group" class="form-label" data-translate="true">Grupo de Anuncios por Defecto</label>
                    <select class="form-select" id="default_announcement_group" name="default_announcement_group">
                        <option value="" data-translate="true">-- No seleccionado --</option>
                        <?php foreach ($telegramGroups as $group): ?>
                            <option value="<?= htmlspecialchars($group['platform_id']) ?>" <?= ($defaultGroupSetting == $group['platform_id']) ? 'selected' : '' ?>>
                                <?= htmlspecialchars($group['name']) ?> (ID: <?= htmlspecialchars($group['platform_id']) ?>)
                            </option>
                        <?php endforeach; ?>
                    </select>
                    <div class="form-text" data-translate="true">Selecciona el grupo al que se enviarán los mensajes al usar el comando "Enviar a grupo #comando" desde el chat del bot.</div>
                </div>
                <button type="submit" name="save_general_settings" class="btn btn-primary">
                    <i class="bi bi-save-fill me-1"></i> <span data-translate="true">Guardar Ajustes de Comandos</span>
                </button>
            </form>
        </div>
    </div>
</div>

<?php
require_once __DIR__ . '/../../templates/footer.php';
?>
