Files
ReZygisk/webroot/js/list/language.js
T
RainyXeon c92ad7c748 improve: language system based on json file
This commit will introduce new language system based on json file for easier to translate using crowdin in the future, also fix webui cannot load
2024-11-12 00:08:43 -03:00

30 lines
1002 B
JavaScript

import {
avaliableLanguages,
getTranslations,
setNewLanguage
} from '../language.js'
const lang_list = document.getElementById('lang_modal_list')
const target = document.getElementById('lang_modal')
let index = 0
for (const langKey of avaliableLanguages) {
index += 1
getTranslations(langKey).then(data => {
lang_list.innerHTML += `
<div lang-data="${langKey}" class="${index === avaliableLanguages.length ? '' : 'spliter'}" style="padding-top: 25px; padding-bottom: 25px; font-size: 1.3em;">
<div lang-data="${langKey}" class="element_animation">${data.langName}</div>
</div>`
})
}
document.addEventListener('click', async (event) => {
const getLangLocate = event.target.getAttribute('lang-data')
if (!getLangLocate || typeof getLangLocate !== "string") return;
await setNewLanguage(getLangLocate)
target.style.top = '100%'
localStorage.setItem('/cache/modal/language/state', 'closed')
localStorage.setItem('/system/language', getLangLocate)
}, false)