<?php
if ($hasResults && $total_pages > 1) {
    echo "<div class='pagination'>";

    // Supondo que os campos relevantes da tabela `tb_dominio` sejam 'nome_tabela' e 'descricao_dominio'
    // você precisará ajustar os parâmetros de acordo.
    $params = [
        'nome_tabela' => $nome_tabela, // ajuste conforme a real variável que você tem
        'descricao_dominio' => $descricao_dominio, // ajuste conforme a real variável que você tem
        'situacao' => $situacao, // este pode permanecer, se ainda for relevante
        'form_submitted' => '1' // mantém o controle de um formulário submetido
    ];

    // Filtrar valores nulos ou 'Todos' para não incluí-los na URL.
    $params = array_filter($params, function($value) {
        return $value !== null && $value !== 'Todos';
    });

    $queryString = http_build_query($params);

    // Navegação para a página anterior
    if ($current_page > 1) {
        echo "<a href='index.php?page=" . ($current_page - 1) . "&" . $queryString . "'>Anterior</a>&nbsp;";
    }

    $startPage = max(1, ($current_page - 3));
    $endPage = min($total_pages, ($current_page + 3));

    if ($current_page <= 4) {
        $endPage = min($total_pages, 7);
    }

    // Mostra todos os números das páginas entre startPage e endPage
    for ($i = $startPage; $i <= $endPage; $i++) {
        if ($i == $current_page) {
            // Se for a página atual, exibe em negrito
            echo "<strong><a href='index.php?page=" . $i . "&" . $queryString . "'>" . $i . "</a></strong>&nbsp;";
        } else {
            echo "<a href='index.php?page=" . $i . "&" . $queryString . "'>" . $i . "</a>&nbsp;";
        }
    }

    // Navegação para a próxima página
    if ($current_page < $total_pages) {
        echo "<a href='index.php?page=" . ($current_page + 1) . "&" . $queryString . "'>Próxima</a> ";
    }

    echo "</div>";
}
?>
