<?php
$db = new PDO('sqlite:' . __DIR__ . '/../api/db.db');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);

$db->exec("CREATE TABLE IF NOT EXISTS vencimento_config (
    id INTEGER PRIMARY KEY CHECK (id = 1),
    ativo INTEGER NOT NULL DEFAULT 1,
    dias_antes INTEGER NOT NULL DEFAULT 7,
    titulo TEXT DEFAULT 'Seu acesso está perto de vencer',
    mensagem TEXT DEFAULT '',
    mostrar_qrcode INTEGER NOT NULL DEFAULT 1,
    updated_at INTEGER NOT NULL DEFAULT (strftime('%s','now'))
)");

$db->exec("INSERT OR IGNORE INTO vencimento_config (id, ativo, dias_antes, titulo, mensagem, mostrar_qrcode) VALUES (1, 1, 7, 'Seu acesso está perto de vencer', 'Renove para continuar assistindo.', 1)");

$ok = '';

if (($_SERVER['REQUEST_METHOD'] ?? '') === 'POST') {
    $st = $db->prepare("UPDATE vencimento_config SET ativo=?, dias_antes=?, titulo=?, mensagem=?, mostrar_qrcode=?, updated_at=strftime('%s','now') WHERE id=1");
    $st->execute([
        (int)($_POST['ativo'] ?? 0),
        max(0, min(30, (int)($_POST['dias_antes'] ?? 7))),
        trim((string)($_POST['titulo'] ?? '')) ?: 'Seu acesso está perto de vencer',
        trim((string)($_POST['mensagem'] ?? '')),
        (int)($_POST['mostrar_qrcode'] ?? 0),
    ]);

    $ok = 'Configuração salva com sucesso.';
}

$row = $db->query('SELECT * FROM vencimento_config WHERE id=1')->fetch() ?: [];

require_once __DIR__ . '/../includes/header.php';
?>
<div class="dns-wrap">
    <div class="card radius-10 dns-card">
        <div class="card-header bg-transparent dns-header">
            <div class="dns-title">
                <div class="ic"><i class="bi bi-calendar-check"></i></div>
                <div>
                    <h5>Vencimentos</h5>
                    <span>Configure o aviso de vencimento exibido no aplicativo</span>
                </div>
            </div>

            <div class="dns-actions">
                <?php if (!empty($row['ativo'])): ?>
                    <span class="badge-soft"><i class="bi bi-check-circle-fill"></i> Ativo</span>
                <?php else: ?>
                    <span class="badge-soft"><i class="bi bi-lock-fill"></i> Inativo</span>
                <?php endif; ?>
            </div>
        </div>

        <div class="card-body">
            <?php if ($ok): ?>
                <div class="alert alert-success">
                    <?= htmlspecialchars($ok, ENT_QUOTES, 'UTF-8') ?>
                </div>
            <?php endif; ?>

            <form method="post" class="row g-3">
                <div class="col-lg-4 col-md-4 col-12">
                    <label class="form-label fw-900">Ativar aviso de vencimento</label>
                    <select name="ativo" class="form-select input-radius">
                        <option value="1" <?= !empty($row['ativo']) ? 'selected' : '' ?>>Sim</option>
                        <option value="0" <?= empty($row['ativo']) ? 'selected' : '' ?>>Não</option>
                    </select>
                </div>

                <div class="col-lg-4 col-md-4 col-12">
                    <label class="form-label fw-900">Dias antes para começar</label>
                    <select name="dias_antes" class="form-select input-radius">
                        <?php for($i = 0; $i <= 30; $i++): ?>
                            <option value="<?= $i ?>" <?= (int)($row['dias_antes'] ?? 7) === $i ? 'selected' : '' ?>>
                                <?= $i === 0 ? 'Só no dia do vencimento' : $i . ' dia(s) antes' ?>
                            </option>
                        <?php endfor; ?>
                    </select>
                </div>

                <div class="col-lg-4 col-md-4 col-12">
                    <label class="form-label fw-900">Mostrar QR Code</label>
                    <select name="mostrar_qrcode" class="form-select input-radius">
                        <option value="1" <?= !empty($row['mostrar_qrcode']) ? 'selected' : '' ?>>Sim</option>
                        <option value="0" <?= empty($row['mostrar_qrcode']) ? 'selected' : '' ?>>Não</option>
                    </select>
                </div>

                <div class="col-12">
                    <label class="form-label fw-900">Título do modal</label>
                    <input name="titulo" class="form-control input-radius" value="<?= htmlspecialchars((string)($row['titulo'] ?? ''), ENT_QUOTES, 'UTF-8') ?>">
                </div>

                <div class="col-12">
                    <label class="form-label fw-900">Mensagem do modal</label>
                    <textarea name="mensagem" class="form-control textarea-radius" rows="5"><?= htmlspecialchars((string)($row['mensagem'] ?? ''), ENT_QUOTES, 'UTF-8') ?></textarea>
                </div>

                <div class="col-12">
                    <div class="info-box">
                        <strong>Atualização:</strong>
                        <?= !empty($row['updated_at']) ? date('d/m/Y H:i:s', (int)$row['updated_at']) : '-' ?>
                    </div>
                </div>

                <div class="col-12">
                    <button class="btn btn-success save-btn">
                        <i class="bi bi-save"></i> Salvar configuração
                    </button>
                </div>
            </form>
        </div>
    </div>
</div>

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