fix: redirect to lang parameter when loading from localStorage

- Change from HTMX partial update to full page redirect
- Ensures modal and all UI elements render in correct language
- Uses window.location.replace() to avoid history pollution
This commit is contained in:
juanatsap
2025-11-10 19:32:20 +00:00
parent cf8adfd0e2
commit 1ad6251a8c
+4 -16
View File
@@ -732,22 +732,10 @@
const savedLang = localStorage.getItem('cv-language'); const savedLang = localStorage.getItem('cv-language');
if (!urlLang && savedLang) { if (!urlLang && savedLang) {
// URL is clean but we have a saved preference - load that language // URL is clean but we have a saved preference - redirect with lang parameter
htmx.ajax('GET', `/cv?lang=${savedLang}`, { const url = new URL(window.location);
target: '#cv-content', url.searchParams.set('lang', savedLang);
swap: 'innerHTML swap:0ms settle:0ms' window.location.replace(url.toString());
});
// Update button states
document.querySelectorAll('.language-selector .selector-btn').forEach(btn => {
btn.classList.remove('active');
if (btn.getAttribute('onclick').includes(savedLang)) {
btn.classList.add('active');
}
});
// Update html lang attribute
document.documentElement.lang = savedLang;
} else if (urlLang) { } else if (urlLang) {
// Save URL language to localStorage // Save URL language to localStorage
localStorage.setItem('cv-language', urlLang); localStorage.setItem('cv-language', urlLang);