added german translations

This commit is contained in:
zyqunix 2024-12-05 21:40:19 +01:00
parent 3cd079bdf9
commit a025525d04
7 changed files with 132 additions and 35 deletions

View file

@ -9,42 +9,48 @@ async function fetchTools() {
} catch (error) {
console.error("Failed to fetch tools:", error);
return [];
};
}
};
function renderTools(filteredTools) {
function renderTools(filteredTools, language = 'en') {
const toolList = document.getElementById('toolsMain');
toolList.innerHTML = "";
if (filteredTools.length === 0) {
toolList.innerHTML = "<div class='text-center'>No tools match the selected filter.</div>"
return;
}
filteredTools.sort((a, b) => b.description - a.description);
filteredTools.forEach(tool => {
const toolData = {
name: language === 'de' ? tool["name-de"] : tool.name,
subheader: language === 'de' ? tool["subheader-de"] : tool.subheader,
description: language === 'de' ? tool["description-de"] : tool.description,
url: tool.url
};
const toolItem = document.createElement("div");
toolItem.className = "tool-div";
toolItem.innerHTML = `
<h1 class="tool-header"> ${tool.name} </h1>
<h2 class="tool-subhead"><u>${tool.subheader}</u></h2>
<h2 class="tool-desc">${tool.description}</h2>
<h1 class="tool-header"> ${toolData.name} </h1>
<h2 class="tool-subhead">${toolData.subheader}</h2>
<h2 class="tool-desc">${toolData.description}</h2>
<img class="tool-media" src="assets/${tool.name}.png" alt="${tool.name} Image">
<a id="visit" class="visit-tool" href="${tool.url}">Visit "${tool.name}"!</a>
<a id="visit" class="visit-tool" href="${toolData.url}">Visit "${toolData.name}"!</a>
`;
toolList.appendChild(toolItem);
});
};
async function filterTools(filterType) {
async function filterTools(filterType, language = 'en') {
const tools = await fetchTools();
let filteredTools;
if (filterType) {
filteredTools = tools;
}
renderTools(filteredTools);
renderTools(filteredTools, language);
}
filterTools('all');
document.getElementById('langauge-selector').addEventListener('change', async (event) => {
const selectedLanguage = event.target.value;
await filterTools('all', selectedLanguage);
});
filterTools('all');