Skip to content

Commit 71438c9

Browse files
authored
Create list mit languages which need use NotoSans font and add function to auto change font for this languages
1 parent 8035160 commit 71438c9

File tree

1 file changed

+42
-33
lines changed

1 file changed

+42
-33
lines changed

docs/main.js

Lines changed: 42 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -37732,6 +37732,8 @@ organized.require('ix2').init({
3773237732
},
3773337733
});
3773437734

37735+
const notoSansLanguages = ['日本語', 'Malagasy'];
37736+
3773537737
const languageFiles = {
3773637738
English: '/locales/en/strings.json',
3773737739
Deutsch: '/locales/de-DE/strings.json',
@@ -37746,59 +37748,66 @@ const select = document.querySelector('.language-btn');
3774637748
const selected = document.querySelector('.language-name');
3774737749
const menu = document.querySelector('.dropdown');
3774837750
const options = document.querySelectorAll('.dropdown li a');
37751+
const body = document.querySelector('body');
3774937752

3775037753
select.addEventListener('click', () => {
37751-
menu.classList.toggle('show');
37754+
menu.classList.toggle('show');
3775237755
});
3775337756

3775437757
options.forEach((option) => {
37755-
option.addEventListener('click', (event) => {
37756-
event.preventDefault();
37758+
option.addEventListener('click', (event) => {
37759+
event.preventDefault();
3775737760

37758-
const selectedLanguage = event.target.getAttribute('data-language');
37759-
selected.textContent = selectedLanguage;
37761+
const selectedLanguage = event.target.getAttribute('data-language');
37762+
selected.textContent = selectedLanguage;
3776037763

37761-
const translationsPath = languageFiles[selectedLanguage];
37764+
const translationsPath = languageFiles[selectedLanguage];
3776237765

37763-
fetch(translationsPath)
37764-
.then((response) => response.json())
37765-
.then((translations) => {
37766-
document.querySelectorAll('[data-trID]').forEach((el) => {
37767-
const key = el.getAttribute('data-trID');
37766+
if (notoSansLanguages.includes(selectedLanguage)) {
37767+
body.classList.add('noto-sans');
37768+
} else {
37769+
body.classList.remove('noto-sans');
37770+
}
3776837771

37769-
if (translations[key]) {
37770-
el.innerHTML = translations[key];
37771-
}
37772-
});
37773-
});
37772+
fetch(translationsPath)
37773+
.then((response) => response.json())
37774+
.then((translations) => {
37775+
document.querySelectorAll('[data-trID]').forEach((el) => {
37776+
const key = el.getAttribute('data-trID');
3777437777

37775-
menu.classList.remove('show');
37776-
localStorage.setItem('selectedLanguage', selectedLanguage);
37778+
if (translations[key]) {
37779+
el.innerHTML = translations[key];
37780+
}
37781+
});
37782+
});
3777737783

37778-
options.forEach((option) => {
37779-
option.classList.remove('active');
37780-
});
37784+
menu.classList.remove('show');
37785+
localStorage.setItem('selectedLanguage', selectedLanguage);
3778137786

37782-
option.classList.add('active');
37783-
});
37787+
options.forEach((option) => {
37788+
option.classList.remove('active');
37789+
});
37790+
37791+
option.classList.add('active');
37792+
});
3778437793
});
3778537794

3778637795
document.addEventListener('click', (event) => {
37787-
const isClickInsideMenu = menu.contains(event.target);
37788-
const isClickInsideSelect = select.contains(event.target);
37796+
const isClickInsideMenu = menu.contains(event.target);
37797+
const isClickInsideSelect = select.contains(event.target);
3778937798

37790-
if (!isClickInsideMenu && !isClickInsideSelect) {
37791-
menu.classList.remove('show');
37792-
}
37799+
if (!isClickInsideMenu && !isClickInsideSelect) {
37800+
menu.classList.remove('show');
37801+
}
3779337802
});
3779437803

3779537804
if (localStorage.getItem('selectedLanguage')) {
37796-
const storedLanguage = localStorage.getItem('selectedLanguage');
37797-
const languageOption = document.querySelector(`a[data-language="${storedLanguage}"]`);
37798-
languageOption.click();
37805+
const storedLanguage = localStorage.getItem('selectedLanguage');
37806+
const languageOption = document.querySelector(`a[data-language="${storedLanguage}"]`);
37807+
languageOption.click();
3779937808
} else {
37800-
const defaultLanguageOption = document.querySelector('a[data-language="English"]');
37801-
defaultLanguageOption.click();
37809+
const defaultLanguageOption = document.querySelector('a[data-language="English"]');
37810+
defaultLanguageOption.click();
3780237811
}
3780337812

3780437813
const year = document.getElementById('year');

0 commit comments

Comments
 (0)