Aktuálně ve vývoji!
Jedná se o webovou stránku určenou k uživatelskému překládání přehledů, která je složená z:

HTML: translate.html (/web/translate.html)

JAVASCRIPT: translate.js (/web/scripts-g/translate.js)

CSS: translate.css (/web/stylesheets-g/uni/translate.css)
Na stránku se lze dostat na adrese:
${doména}/translate.html?tableId=${pořadník přehledu}&language=${kód jazyka}
Například: https://renomia.flexideo.cloud/translate.html?tableId=4173&language=enSkript načte url parametry tableId (pořadník přehledu) a language (kód jazyka, do kterého chceme překládat). Následně získá pomocí požadavku get-settings nastavení daného přehledu a vygeneruje input pole pro názvy sloupců, filtrů a nástrojů. Tyto pole jsou filtrovány podle podle viditelnosti na Comex přehledu:
Sloupce:
column.getAttribute("hide-on-grid") !== "true" &&
column.getAttribute("reqd-on-grid") !== "false" &&
column.getAttribute("width") !== "0"Nástroje:
const type = tool.getAttribute("type");
const tableAvailability = tool.getAttribute("table-availability");
const rowAvailability = tool.getAttribute("row-availability");
return (
(type?.includes("item") && rowAvailability !== "hide") ||
(type?.includes("tab") && tableAvailability !== "hide")
);Filtry:
const criterionId = criterion.getAttribute("id");
const criterionItem2 = criterion.getAttribute("item-2").slice(1, -1);
return Array.from(
corporateResponse.querySelectorAll("variables variable")
).some(
(variable) =>
variable.getAttribute("name") === `${criterionItem2}` &&
criterionItem2.slice(4) == criterionId
);Tedy sloupců a nástrojů řešíme čistě viditelnost. U filtrů dále řešíme také jejich spojení s dodatečným zadáním a vypisujeme jen ty <criterion>, jejichž atribut id sedí s atributem item-2 a navíc ještě existuje takový <variable>, který odpovídá svým atributem name atributu item-2.
Pole se naplní již existujícími přehledy tak, že primárně se berou překlady z uživatelské tabulky user-translate-${kód jazyka} a sekundárně z tabulky corporate-table, kde jsou vyplněny z editoru Intranetu.
Překladač si kontroluje počet vyplněných polí a dynamicky upozorňuje uživatele na počet polí, která je ještě potřeba vyplnit. Kontroluje také použití speciálních znaků, které jsou zakázané. Po uložení se odesílá požadavek save-settings pro daný přehled, uživatele a jazyk na tabulku user-translate-${kód jazyka}.