Files
@ 5e66e34fa02f
Branch filter:
Location: C3L-NOC/tls-expiry-tracker/frontend/script.js - annotation
5e66e34fa02f
1.8 KiB
application/javascript
feat: support POSIX times
5e66e34fa02f 5e66e34fa02f 5e66e34fa02f 5e66e34fa02f 5e66e34fa02f 5e66e34fa02f 57431ad962e9 5e66e34fa02f 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 5e66e34fa02f 5e66e34fa02f 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 57431ad962e9 5e66e34fa02f 57431ad962e9 57431ad962e9 5e66e34fa02f 58e96cb98d3a 5e66e34fa02f 5e66e34fa02f 5e66e34fa02f 5e66e34fa02f 5e66e34fa02f 5e66e34fa02f 58e96cb98d3a 5e66e34fa02f 5e66e34fa02f 58e96cb98d3a 5e66e34fa02f 58e96cb98d3a 58e96cb98d3a 58e96cb98d3a 58e96cb98d3a 58e96cb98d3a 58e96cb98d3a 5e66e34fa02f 58e96cb98d3a | function getDateDifference(datePosix) {
const difference = Date.now() - (datePosix * 1000);
const days = Math.floor(difference / (1000 * 3600 * 24));
return days.toString();
}
function generateTable(data) {
try {
const tableBody = document.createElement("tbody");
tableBody.classList.add("logs__tbody");
for (let i = 0; i < data.length; i++) {
const row = document.createElement("tr");
row.classList.add("logs__trow");
const domain = document.createElement("td");
domain.classList.add("logs__item__name");
const domainText = document.createTextNode(data[i].domain);
domain.appendChild(domainText);
row.appendChild(domain);
const date = document.createElement("td");
date.classList.add("logs__item__date");
const dateData = getDateDifference(data[i].date);
const dateText = document.createTextNode(dateData + " days ago");
date.appendChild(dateText);
row.appendChild(date);
tableBody.appendChild(row);
}
const table = document.createElement("table");
table.classList.add("logs__table");
table.appendChild(tableBody);
document.getElementById("logs").appendChild(table);
} catch (e) {}
}
function setRecentDate(data) {
console.log(data);
let mostRecentDate = 0;
try {
mostRecentDate = data.reduce((maxNum, expiredEntry) => {
return Math.max(expiredEntry.date, maxNum)
}, 0);
} catch (e) {}
if(mostRecentDate === 0) mostRecentDate = "∞";
else mostRecentDate = getDateDifference(mostRecentDate);
document.getElementById("time__tls").innerHTML = mostRecentDate;
}
fetch("data.json")
.then(res => res.json())
.then(data => {
generateTable(data.incidents);
setRecentDate(data.incidents);
});
|