<?php
// Database connection
$db = new SQLite3('./api/.db.db');

// Table name
$table_name = "sport_api_config";

// Current file var
$base_file = basename($_SERVER["SCRIPT_NAME"]);

// Create table if not exists
$db->exec("CREATE TABLE IF NOT EXISTS {$table_name}(
    id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 
    api_type TEXT DEFAULT 'default',
    custom_api_url TEXT,
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
    updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
)");

// Get current configuration
$config = null;
$res = $db->query("SELECT * FROM {$table_name} ORDER BY id DESC LIMIT 1");
if ($row = $res->fetchArray(SQLITE3_ASSOC)) {
    $config = $row;
} else {
    // Insert default configuration if none exists
    $db->exec("INSERT INTO {$table_name} (api_type) VALUES ('default')");
    $config = ['api_type' => 'default', 'custom_api_url' => ''];
}

// Handle form submission
if (isset($_POST['save_config'])) {
    $api_type = $_POST['api_type'];
    $custom_api_url = trim($_POST['custom_api_url']);
    
    // Validate custom URL if selected
    if ($api_type === 'custom' && !filter_var($custom_api_url, FILTER_VALIDATE_URL)) {
        $error = "URL da API personalizada é inválida.";
    } else {
        // Update configuration
        $stmt = $db->prepare("UPDATE {$table_name} SET api_type = :api_type, custom_api_url = :custom_api_url, updated_at = datetime('now') WHERE id = :id");
        $stmt->bindValue(':api_type', $api_type, SQLITE3_TEXT);
        $stmt->bindValue(':custom_api_url', $custom_api_url, SQLITE3_TEXT);
        $stmt->bindValue(':id', $config['id'], SQLITE3_INTEGER);
        
        if ($stmt->execute()) {
            $success = "Configurações salvas com sucesso!";
            // Reload configuration
            $res = $db->query("SELECT * FROM {$table_name} ORDER BY id DESC LIMIT 1");
            $config = $res->fetchArray(SQLITE3_ASSOC);
        } else {
            $error = "Erro ao salvar configurações.";
        }
    }
}

include ('includes/studiolivheaderecode.php');
?>

<div class="container-fluid">
    <div class="row justify-content-center">
        <div class="col-12 col-lg-10 col-xl-8">
            <div class="card bg-primary shadow-lg">
                <div class="card-header card-header-warning py-3">
                    <h2 class="h4 mb-0 text-center"><i class="fa fa-futbol-o mr-2"></i>Configuração de API de Esportes</h2>
                </div>
                
                <div class="card-body p-4">
                    <?php if (isset($error)): ?>
                    <div class="alert alert-danger alert-dismissible fade show" role="alert">
                        <?= $error ?>
                        <button type="button" class="close" data-dismiss="alert" aria-label="Close">
                            <span aria-hidden="true">&times;</span>
                        </button>
                    </div>
                    <?php endif; ?>
                    
                    <?php if (isset($success)): ?>
                    <div class="alert alert-success alert-dismissible fade show" role="alert">
                        <?= $success ?>
                        <button type="button" class="close" data-dismiss="alert" aria-label="Close">
                            <span aria-hidden="true">&times;</span>
                        </button>
                    </div>
                    <?php endif; ?>
                    
                    <!-- Configuration Form -->
                    <div class="row mb-4">
                        <div class="col-12">
                            <div class="card bg-light-primary border-0">
                                <div class="card-body p-4">
                                    <h5 class="text-white mb-4"><i class="fa fa-cog mr-2"></i>Configurações da API</h5>
                                    <form method="post">
                                        <div class="form-group">
                                            <label class="text-white">Tipo de API</label>
                                            <div class="row mt-3">
                                                <div class="col-12 col-md-6 mb-3">
                                                    <div class="custom-control custom-radio">
                                                        <input type="radio" id="api_default" name="api_type" value="default" class="custom-control-input" <?= ($config['api_type'] === 'default') ? 'checked' : '' ?>>
                                                        <label class="custom-control-label text-white" for="api_default">API Padrão</label>
                                                    </div>
                                                    <small class="form-text text-white-60 ml-4">
                                                        Usa a API interna: <code>api/sport.php</code>
                                                    </small>
                                                </div>
                                                <div class="col-12 col-md-6 mb-3">
                                                    <div class="custom-control custom-radio">
                                                        <input type="radio" id="api_custom" name="api_type" value="custom" class="custom-control-input" <?= ($config['api_type'] === 'custom') ? 'checked' : '' ?>>
                                                        <label class="custom-control-label text-white" for="api_custom">API Personalizada</label>
                                                    </div>
                                                    <small class="form-text text-white-60 ml-4">
                                                        Use sua própria API de esportes
                                                    </small>
                                                </div>
                                            </div>
                                        </div>
                                        
                                        <div id="custom_api_section" style="display: <?= ($config['api_type'] === 'custom') ? 'block' : 'none' ?>;">
                                            <div class="form-group">
                                                <label for="custom_api_url" class="text-white">URL da API Personalizada</label>
                                                <input type="url" class="form-control" id="custom_api_url" name="custom_api_url" placeholder="https://exemplo.com/api/esportes" value="<?= htmlspecialchars($config['custom_api_url'] ?? '') ?>">
                                                <small class="form-text text-white-60">
                                                    Informe a URL completa da sua API de esportes
                                                </small>
                                            </div>
                                        </div>
                                        
                                        <div class="form-group text-center mt-4">
                                            <button class="btn btn-info px-4 py-2" name="save_config" type="submit">
                                                <i class="fa fa-save mr-2"></i> Salvar Configurações
                                            </button>
                                        </div>
                                    </form>
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- API Preview Section -->
                    <div class="row">
                        <div class="col-12">
                            <div class="card bg-light-primary border-0">
                                <div class="card-body p-4">
                                    <h5 class="text-white mb-4"><i class="fa fa-eye mr-2"></i>Visualização da API</h5>
                                    
                                    <?php
                                    // Determine which API URL to use
                                    $api_url = '';
                                    if ($config['api_type'] === 'default') {
                                        $api_url = './api/sport.php';
                                    } elseif ($config['api_type'] === 'custom' && !empty($config['custom_api_url'])) {
                                        $api_url = $config['custom_api_url'];
                                    }
                                    ?>
                                    
                                    <?php if (!empty($api_url)): ?>
                                    <div class="embed-responsive embed-responsive-16by9">
                                        <iframe class="embed-responsive-item" src="<?= htmlspecialchars($api_url) ?>" frameborder="0" id="apiPreview"></iframe>
                                    </div>
                                    <div class="mt-3 text-center">
                                        <small class="text-white-60">
                                            Visualizando: <code><?= htmlspecialchars($api_url) ?></code>
                                        </small>
                                    </div>
                                    <?php else: ?>
                                    <div class="alert alert-info bg-info-light border-info text-center">
                                        <i class="fa fa-info-circle mr-2"></i>Configure uma API para visualizar o conteúdo.
                                    </div>
                                    <?php endif; ?>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

<?php include ('includes/studifooterolivecode.php'); ?>

<script>
    document.addEventListener('DOMContentLoaded', function() {
        // Show/hide custom API URL field based on selection
        const apiDefault = document.getElementById('api_default');
        const apiCustom = document.getElementById('api_custom');
        const customApiSection = document.getElementById('custom_api_section');
        
        function toggleCustomApiSection() {
            if (apiCustom.checked) {
                customApiSection.style.display = 'block';
            } else {
                customApiSection.style.display = 'none';
            }
        }
        
        apiDefault.addEventListener('change', toggleCustomApiSection);
        apiCustom.addEventListener('change', toggleCustomApiSection);
        
        // Refresh iframe when form is submitted
        const form = document.querySelector('form');
        form.addEventListener('submit', function() {
            setTimeout(function() {
                const iframe = document.getElementById('apiPreview');
                if (iframe) {
                    iframe.src = iframe.src; // Refresh iframe
                }
            }, 1000);
        });
    });
</script>