<?php
// Conectar ao banco de dados SQLite
$db_sqlite = new SQLite3("./api/.ansdb.db");

// Verificar se o cliente_id foi enviado
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['cliente_id'])) {
    $cliente_id = (int)$_POST['cliente_id'];

    // Verificar se o ID do cliente está vazio
    if (empty($cliente_id)) {
        echo "ID do cliente não fornecido.";
        exit();
    }

    // Verificar a conexão com o banco de dados
    if (!$db_sqlite) {
        echo "Erro ao conectar ao banco de dados.";
        exit();
    }

    // Obter a data de expiração atual do cliente
    $stmt = $db_sqlite->prepare("SELECT expire_date FROM ibo WHERE id = :id");
    $stmt->bindValue(':id', $cliente_id, SQLITE3_INTEGER);
    $result = $stmt->execute();
    
    // Verificar se o cliente foi encontrado
    $row = $result->fetchArray(SQLITE3_ASSOC);
    if (!$row) {
        echo "Cliente não encontrado.";
        exit();
    }

    // Recuperar a data de expiração atual
    $data_expiracao_atual = $row['expire_date'];

    // Verificar se a data de expiração foi recuperada
    if (!$data_expiracao_atual) {
        echo "Data de expiração não encontrada.";
        exit();
    }

    // Adicionar 30 dias à data de expiração atual
    $nova_data_expiracao = date('Y-m-d', strtotime($data_expiracao_atual . ' + 30 days'));

    // Preparar e executar a atualização
    $stmt_update = $db_sqlite->prepare("UPDATE ibo SET expire_date = :expire_date WHERE id = :id");
    $stmt_update->bindValue(':expire_date', $nova_data_expiracao, SQLITE3_TEXT);
    $stmt_update->bindValue(':id', $cliente_id, SQLITE3_INTEGER);

    // Executar a consulta de atualização
    $result_update = $stmt_update->execute();

    if ($result_update) {
        echo "Usuário renovado com sucesso! Nova data de expiração: " . $nova_data_expiracao;
    } else {
        echo "Erro ao renovar o usuário: " . $db_sqlite->lastErrorMsg();
    }

    $db_sqlite->close();
}
?>
