<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

include '../includes/header2.php';

echo "<div style='padding: 20px;'>";
echo "<h2>Debug DNS - Revenda</h2>";
echo "<p>Usuário logado: <strong>" . htmlspecialchars($seller_name) . "</strong></p>";

// Fechar qualquer conexão anterior que possa existir
if (isset($db)) {
    $db->close();
    unset($db);
}

// Aguardar um momento para liberar o lock
usleep(100000); // 0.1 segundo

// Criar nova conexão
$db = new SQLite3('../a/.eggziedb.db');

// Configurar para modo de espera em caso de lock
$db->busyTimeout(5000); // Aguardar 5 segundos se o banco estiver bloqueado

// Verificar se a tabela existe
$tables = $db->query("SELECT name FROM sqlite_master WHERE type='table' AND name='dns_list'");
$table_exists = $tables->fetchArray();
if ($table_exists) {
    echo "<p style='color:green'>✓ Tabela dns_list existe</p>";
} else {
    echo "<p style='color:red'>✗ Tabela dns_list NÃO existe - criando agora...</p>";
    $db->exec('CREATE TABLE IF NOT EXISTS dns_list (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        nome TEXT NOT NULL,
        dns TEXT NOT NULL,
        owner TEXT NOT NULL,
        created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    )');
    echo "<p style='color:green'>✓ Tabela criada com sucesso</p>";
}

// Inserir um DNS de teste
$test_nome = "DNS Teste " . date('H:i:s');
$test_dns = "http://teste.com:8080";
$test_owner = $seller_name;

// Usar prepared statement para evitar problemas
$stmt = $db->prepare("INSERT INTO dns_list (nome, dns, owner) VALUES (:nome, :dns, :owner)");
$stmt->bindValue(':nome', $test_nome, SQLITE3_TEXT);
$stmt->bindValue(':dns', $test_dns, SQLITE3_TEXT);
$stmt->bindValue(':owner', $test_owner, SQLITE3_TEXT);
$insert = $stmt->execute();

if ($insert) {
    echo "<p style='color:green'>✓ DNS de teste inserido com sucesso! ID: " . $db->lastInsertRowID() . "</p>";
} else {
    echo "<p style='color:red'>✗ Erro ao inserir DNS de teste: " . $db->lastErrorMsg() . "</p>";
}

// Listar todas as DNSs
$result = $db->query("SELECT * FROM dns_list WHERE owner = '$seller_name' ORDER BY id DESC");
echo "<h3>DNSs cadastradas para $seller_name:</h3>";
echo "<table border='1' cellpadding='5' style='border-collapse: collapse;'>";
echo "<tr style='background:#f0f0f0'><th>ID</th><th>Nome</th><th>DNS</th><th>Owner</th><th>Data</th></tr>";

$count = 0;
while ($row = $result->fetchArray(SQLITE3_ASSOC)) {
    $count++;
    echo "<tr>";
    echo "<td>" . $row['id'] . "</td>";
    echo "<td>" . htmlspecialchars($row['nome']) . "</td>";
    echo "<td>" . htmlspecialchars($row['dns']) . "</td>";
    echo "<td>" . htmlspecialchars($row['owner']) . "</td>";
    echo "<td>" . $row['created_at'] . "</td>";
    echo "</tr>";
}
echo "</table>";

if ($count == 0) {
    echo "<p style='color:orange'>Nenhuma DNS encontrada para este usuário</p>";
} else {
    echo "<p style='color:green'>Total: $count DNS(s) encontrada(s)</p>";
}

// Fechar conexão
$db->close();

echo "<br><a href='dns.php' class='btn btn-primary'>Voltar para DNS</a>";
echo "</div>";

include '../includes/footer2.php';
?>