preserve language choice across pages

This commit is contained in:
Jeff Emmett 2025-04-09 16:59:46 -07:00
parent 3fa2b7d81f
commit aa93ea2a42
1 changed files with 24 additions and 1 deletions

View File

@ -46,11 +46,34 @@ const translations = {
} }
}; };
let currentLanguage = 'en'; // Get stored language or default to 'en'
let currentLanguage = localStorage.getItem('selectedLanguage') || 'en';
// Initialize page with stored language
document.addEventListener('DOMContentLoaded', () => {
// Update language toggle text
const langText = document.getElementById('langText');
if (langText) {
langText.textContent = currentLanguage === 'en' ? 'EN / عربي' : 'عربي / EN';
}
// Set initial direction and translate if not English
if (currentLanguage === 'ar') {
document.documentElement.dir = 'rtl';
document.querySelectorAll('main, section, footer').forEach(element => {
element.style.direction = 'rtl';
});
document.querySelector('header').style.direction = 'ltr';
translatePage();
}
});
function toggleLanguage() { function toggleLanguage() {
currentLanguage = currentLanguage === 'en' ? 'ar' : 'en'; currentLanguage = currentLanguage === 'en' ? 'ar' : 'en';
// Store language preference
localStorage.setItem('selectedLanguage', currentLanguage);
const langText = document.getElementById('langText'); const langText = document.getElementById('langText');
if (langText) { if (langText) {
langText.textContent = currentLanguage === 'en' ? 'EN / عربي' : 'عربي / EN'; langText.textContent = currentLanguage === 'en' ? 'EN / عربي' : 'عربي / EN';