%PDF- %PDF-
| Direktori : /home/vacivi36/dossteste.vacivitta.com.br/vendor/ |
| Current File : /home/vacivi36/dossteste.vacivitta.com.br/vendor/mail.php |
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<title>Dashboard de Abertura de E-mails</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background-color: #121212;
color: #e0e0e0;
margin: 0;
padding: 20px;
}
.container {
max-width: 960px;
margin: auto;
}
h1 {
color: #90caf9;
text-align: center;
margin-bottom: 10px;
}
.counter {
text-align: center;
font-size: 1.2em;
color: #a5d6a7;
margin-bottom: 20px;
}
input[type="text"] {
width: 100%;
padding: 12px;
margin-bottom: 20px;
border: none;
border-radius: 5px;
background-color: #1e1e1e;
color: #fff;
font-size: 16px;
}
.log-box {
background-color: #1e1e1e;
border-radius: 5px;
padding: 15px;
max-height: 70vh;
overflow-y: scroll;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
}
.log-line {
padding: 8px;
border-bottom: 1px solid #333;
font-family: monospace;
white-space: pre-wrap;
}
.log-line:last-child {
border-bottom: none;
}
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: #1e1e1e;
}
::-webkit-scrollbar-thumb {
background: #555;
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: #777;
}
</style>
</head>
<body>
<div class="container">
<h1>📬 Monitor de Abertura de E-mails</h1>
<div class="counter">Total de acessos: <span id="total">0</span></div>
<input type="text" id="search" placeholder="🔍 Filtrar por e-mail, IP ou termo...">
<div class="log-box" id="log">Carregando...</div>
</div>
<script>
async function fetchLogs() {
try {
const response = await fetch('leitor.php');
const text = await response.text();
const lines = text.trim().split("\n").reverse(); // mais recentes no topo
renderLogs(lines);
} catch (err) {
console.error("Erro ao carregar log:", err);
}
}
function renderLogs(lines) {
const search = document.getElementById('search').value.toLowerCase();
const logContainer = document.getElementById('log');
logContainer.innerHTML = '';
const filtered = lines.filter(line => line.toLowerCase().includes(search));
document.getElementById('total').textContent = filtered.length;
filtered.forEach(line => {
const div = document.createElement('div');
div.className = 'log-line';
div.textContent = line;
logContainer.appendChild(div);
});
}
document.getElementById('search').addEventListener('input', () => {
fetchLogs();
});
// Atualização automática
setInterval(fetchLogs, 5000);
fetchLogs(); // Primeira carga
</script>
</body>
</html>