Fix translation DDoS issue

This DDoS issue happened if the language didn't exist or the browser cache was disabled
2023-update-links-forum
_XxFedexX_ 1 year ago
parent 06bf37f859
commit cca8029096

@ -1,23 +1,15 @@
async function translate(lang) {
if (lang == 'en-US') { return };
if (lang == 'en-US') return;
if (lang == "it" || lang == "it-CH") lang = "it-IT";
var ids = [];
ids = Array.from(document.querySelectorAll('[id]'));
var ids_arr = Array.prototype.map.call(ids, function (element, i) {
return element.id;
});
for (i = 0; i < ids_arr.length; i++) {
fetchData(ids_arr[i], lang);
}
};
async function fetchData(id, lang) {
var ids_arr = Array.prototype.map.call(ids, (element, i)=>{return element.id});
var response = await fetch(`js/translations/${lang}.json`);
response = await response.json();
getTranslation(response, id);
for (i = 0; i < ids_arr.length; i++) getTranslation(response, ids_arr[i]);
};
async function getTranslation(data, keys) {
document.getElementById(keys).textContent = JSON.stringify(data[keys]).replace(/["]+/g, '');
};
// console errors are stupid, my code works fine (its late @ night :/)
};
Loading…
Cancel
Save