11window . addEventListener ( "DOMContentLoaded" , function ( ) {
22 let current_language = localStorage . getItem ( "current_language" ) ;
3- if ( current_language === null ) {
3+ let page_language = localStorage . getItem ( "page_language" ) ;
4+ if ( current_language !== page_language ) {
45 // No language set, defaulting to English
5- current_language = "en" ;
6+ current_language = page_language || "en" ;
67 }
8+ console . log ( current_language ) ;
79 // Set the option in the select element to have the "selected" attribute
810 var selectElement = document . getElementById ( "select_language" ) ;
911 var selectedOption = selectElement . querySelector (
@@ -16,18 +18,15 @@ window.addEventListener("DOMContentLoaded", function() {
1618
1719// Change language for current page
1820function change_language ( ) {
21+ let page_language = localStorage . getItem ( "page_language" ) ;
1922 var selectElement = document . getElementById ( "select_language" ) ;
20- var value = selectElement . options [ selectElement . selectedIndex ] . value ;
23+ var new_language = selectElement . options [ selectElement . selectedIndex ] . value ;
2124
2225 // Get the current page URL
2326 const currentPageUrl = window . location . href ;
24- const old_language = localStorage . getItem ( "current_language" ) ;
25-
26- localStorage . setItem ( "current_language" , value ) ;
27- // Update the lang attribute of the HTML element
28- document . documentElement . setAttribute ( "lang" , value ) ;
27+ localStorage . setItem ( "current_language" , new_language ) ;
2928 window . location . href = currentPageUrl . replace (
30- "/" + old_language + "/" ,
31- "/" + value + "/"
29+ "/" + page_language + "/" ,
30+ "/" + new_language + "/"
3231 ) ;
3332}
0 commit comments