// INICIO DO BANIMENTO

// Lista de IPs bloqueados
var blockedIPs = ['2000.3000.4000.5000', '1000.2000.3000.4000']; // Adicione mais IPs à lista, separados por vírgula

// Função para verificar o IP do visitante
function checkIP() {
    var request = new XMLHttpRequest();
    request.open('GET', 'https://ipinfo.io/json', true); // API externa para obter o IP
    request.onload = function() {
        if (request.status == 200) {
            var data = JSON.parse(request.responseText); // Processa a resposta da API
            var userIP = data.ip; // Obtém o IP do visitante

            // Verifica se o IP está na lista de bloqueados
            if (blockedIPs.includes(userIP)) {
                document.body.innerHTML = '<h2>Verifique se você está autorizado a ver este conteúdo, entre em contato conosco.</h2>'; // Exibe mensagem de bloqueio
            }
        } else {
            console.error('Não foi possível obter o IP do visitante');
        }
    };
    request.onerror = function() {
        console.error('Erro ao tentar acessar a API');
    };
    request.send();
}

// Chama a função para verificar o IP
checkIP();

// INICIO DA PROTEÇÃO CONTRA CÓPIA

// Comentado por questões de segurança. Quando descomentado, ele impede ações de cópia ou impressão.

// Impedir botão direito do mouse
document.addEventListener('contextmenu', function(e) {
    e.preventDefault(); // Impede o menu de contexto
});

// Impedir seleção de texto
document.body.addEventListener('selectstart', function(e) {
    e.preventDefault(); // Impede a seleção de texto
});

// Impedir impressão via CTRL+P ou PrintScreen
document.addEventListener('keydown', function(e) {
    if ((e.ctrlKey && (e.key == 'p' || e.key == 'P')) || e.key == 'PrintScreen') {
        e.preventDefault(); // Impede a impressão com esses atalhos
    }
});

// Impedir atalhos como Ctrl+S, Ctrl+C, Ctrl+X, Ctrl+V
document.addEventListener('keydown', function(e) {
    if (e.ctrlKey && (e.key == 's' || e.key == 'S' || e.key == 'c' || e.key == 'C' || e.key == 'x' || e.key == 'X' || e.key == 'v' || e.key == 'V')) {
        e.preventDefault(); // Impede os atalhos de copiar, salvar ou colar
    }
});

// Impedir a combinação Ctrl + U (visualização do código-fonte)
document.addEventListener('keydown', function(e) {
    if (e.ctrlKey && e.key == 'u') {
        e.preventDefault(); // Impede a visualização do código-fonte
    }
});

// Impedir a combinação Ctrl + O (abrir arquivo)
document.addEventListener('keydown', function(e) {
    if (e.ctrlKey && e.key == 'o') {
        e.preventDefault(); // Impede o uso do atalho de abrir arquivos
    }
});

// Quando o usuário tenta imprimir, ocultar o conteúdo da página
window.onbeforeprint = function() {
    document.body.style.visibility = 'hidden'; // Oculta o conteúdo antes de imprimir
};

// Quando a impressão termina, mostrar novamente o conteúdo da página
window.onafterprint = function() {
    document.body.style.visibility = 'visible'; // Restaura a visibilidade após a impressão
};

// FIM DA PROTEÇÃO CONTRA CÓPIA

// INICIO PROTEÇÃO CONTRA DIRETÓRIOS INDEVIDOS

// Quando a página for carregada, verifica a URL para impedir o acesso a diretórios não permitidos
document.addEventListener("DOMContentLoaded", function () {
    const currentPath = window.location.pathname; // Obtém o caminho da URL atual

    const mainElement = document.querySelector('main#main.centered-bottom');

    // Verifica se a URL corresponde ao formato de uma página de postagem
    const isPostPage = currentPath.match(/\/\d{4}\/\d{2}\/[a-z0-9-]+\.html$/);

    // Se não for uma página de postagem, esconder o conteúdo
    if (mainElement && !isPostPage) {
        mainElement.style.display = "none"; // Esconde o conteúdo da página
    }
});

// Fim da proteção contra diretórios indevidos

// Outra forma de bloquear o conteúdo para diretórios indevidos (redireciona para página em branco)
document.addEventListener("DOMContentLoaded", function () {
    const currentPath = window.location.pathname; // Obtém o caminho da URL

    const isPostPage = currentPath.match(/\/\d{4}\/\d{2}\/[a-z0-9-]+\.html$/); // Verifica se é uma página de postagem

    // Se não for uma página de postagem, redireciona para uma página em branco
    if (!isPostPage) {
        document.body.innerHTML = ""; // Limpa todo o conteúdo da página
    }
});

// Fim da proteção contra diretórios indevidos