update landing page

make relative links (T-Pot home) dynamic to display them only if services are available
adjust dimensions for link container
correct github link
place attack-map link in the home container
This commit is contained in:
marco
2023-04-25 15:03:26 +02:00
parent 88ab453061
commit ff7c368c7f
19 changed files with 63 additions and 1099 deletions

View File

@ -3,12 +3,35 @@
// ┴─┘┴└─┘ ┴ └─┘
// Print the first List
const printFirstList = () => {
const isLinkAvailable = async (link) => {
try {
const response = await fetch(link, { method: 'HEAD', redirect: 'manual' });
if (response.ok) {
// The link is available
return true;
} else if (response.status === 301 || response.status === 302) {
// The link is a redirect, follow the redirect and check the final location
const newLocation = response.headers.get('Location');
if (newLocation) {
const newResponse = await fetch(newLocation, { method: 'HEAD' });
if (newResponse.ok) {
// The final location is available
return true;
}
}
}
} catch (error) {
console.error('Link check failed: ', error);
}
// The link is not available
return false;
};
const printFirstList = async () => {
let icon = `<i class="list__head" icon-name="${CONFIG.firstListIcon}"></i>`;
const position = 'beforeend';
list_1.insertAdjacentHTML(position, icon);
for (const link of CONFIG.lists.firstList) {
// List item
let item = `
<a
target="${CONFIG.openInNewTab ? '_blank' : ''}"
@ -17,8 +40,10 @@ const printFirstList = () => {
>${link.name}</a
>
`;
const position = 'beforeend';
list_1.insertAdjacentHTML(position, item);
if (await isLinkAvailable(link.link)) {
const position = 'beforeend';
list_1.insertAdjacentHTML(position, item);
}
}
};