Generador QR - Hikvision
Información del visitante
Modo de integración:
DEMO / QR LOCAL
QR del visitante
ACTIVO
--:--:--
Complete los datos y presione
GENERAR QR.
Historial de visitantes
| Visitante |
ID |
Creado |
Expira |
Estado |
`);
printWindow.document.close();
printWindow.focus();
setTimeout(
function() {
printWindow.print();
},
500
);
}
);
/*
===========================================================
COPIAR ID
===========================================================
*/
document
.getElementById("copyBtn")
.addEventListener(
"click",
async function() {
if (!currentVisitor) {
return;
}
try {
await navigator.clipboard.writeText(
currentVisitor.id
);
alert(
"ID copiado."
);
}
catch(error) {
alert(
"No se pudo copiar."
);
}
}
);
/*
===========================================================
HISTORIAL
===========================================================
*/
function saveHistory(visitor) {
let history =
JSON.parse(
localStorage.getItem(
"hikvisionVisitorHistory"
)
)
||
[];
history.unshift({
name:
visitor.name,
id:
visitor.id,
created:
new Date().toISOString(),
expiration:
visitor.expiration.toISOString()
});
/*
Mantener últimos 50
*/
history =
history.slice(0, 50);
localStorage.setItem(
"hikvisionVisitorHistory",
JSON.stringify(history)
);
renderHistory();
}
/*
===========================================================
MOSTRAR HISTORIAL
===========================================================
*/
function renderHistory() {
const body =
document.getElementById(
"historyBody"
);
body.innerHTML = "";
let history =
JSON.parse(
localStorage.getItem(
"hikvisionVisitorHistory"
)
)
||
[];
history.forEach(
visitor => {
const expired =
new Date()
>
new Date(
visitor.expiration
);
const row =
document.createElement(
"tr"
);
row.innerHTML = `
${escapeHTML(visitor.name)}
|
${escapeHTML(visitor.id)}
|
${escapeHTML(
formatDate(
new Date(
visitor.created
)
)
)}
|
${escapeHTML(
formatDate(
new Date(
visitor.expiration
)
)
)}
|
${
expired
?
'EXPIRADO'
:
'ACTIVO'
}
|
`;
body.appendChild(row);
}
);
}
renderHistory();
/*
===========================================================
SEGURIDAD HTML
===========================================================
*/
function escapeHTML(value) {
return String(value)
.replace(
/&/g,
"&"
)
.replace(
//g,
">"
)
.replace(
/"/g,
"""
)
.replace(
/'/g,
"'"
);
}