@@ -316,8 +316,7 @@ class PfHeader extends HTMLElement {
316316 <a href="/login" class="nav-link login-link" id="login-link" data-i18n="navigation.login">${ loginText } </a>
317317 <a href="/register" class="subscription-link register-link" id="register-link" data-i18n="navigation.register">${ registerText } </a>
318318
319- <!-- Language Switcher -->
320- <language-switcher></language-switcher>
319+ <!-- Language Switcher moved after user dropdown in updateNavbar() -->
321320
322321 <button class="theme-toggle" title="Toggle light/dark theme">
323322 ${ this . currentTheme === 'dark'
@@ -597,6 +596,24 @@ class PfHeader extends HTMLElement {
597596 // Insert before the theme toggle
598597 themeToggle . insertAdjacentHTML ( 'beforebegin' , dropdownHtml ) ;
599598 console . log ( 'Dropdown inserted before theme toggle' ) ;
599+
600+ // Move language switcher after user dropdown
601+ const languageSwitcher = navLinks . querySelector ( 'language-switcher' ) ;
602+ if ( languageSwitcher ) {
603+ const userDropdown = navLinks . querySelector ( '.user-dropdown' ) ;
604+ if ( userDropdown ) {
605+ // Move language switcher after user dropdown
606+ userDropdown . insertAdjacentElement ( 'afterend' , languageSwitcher ) ;
607+ console . log ( 'Language switcher moved after user dropdown' ) ;
608+ }
609+ } else {
610+ // If language switcher doesn't exist yet, create it
611+ const userDropdown = navLinks . querySelector ( '.user-dropdown' ) ;
612+ if ( userDropdown ) {
613+ userDropdown . insertAdjacentHTML ( 'afterend' , '<language-switcher></language-switcher>' ) ;
614+ console . log ( 'Language switcher created after user dropdown' ) ;
615+ }
616+ }
600617 } else {
601618 // Fallback: append to the end of nav links
602619 navLinks . insertAdjacentHTML ( 'beforeend' , dropdownHtml ) ;
@@ -729,6 +746,18 @@ class PfHeader extends HTMLElement {
729746 const mobileLogoutLink = mobileMenu ?. querySelector ( '.mobile-logout-link' ) ;
730747 if ( mobileSettingsLink ) mobileSettingsLink . remove ( ) ;
731748 if ( mobileLogoutLink ) mobileLogoutLink . remove ( ) ;
749+
750+ // Move language switcher before theme toggle when logged out
751+ const languageSwitcher = navLinks . querySelector ( 'language-switcher' ) ;
752+ const themeToggle = navLinks . querySelector ( '.theme-toggle' ) ;
753+ if ( languageSwitcher && themeToggle ) {
754+ themeToggle . insertAdjacentElement ( 'beforebegin' , languageSwitcher ) ;
755+ console . log ( 'Language switcher moved before theme toggle (logged out)' ) ;
756+ } else if ( ! languageSwitcher && themeToggle ) {
757+ // If language switcher doesn't exist yet, create it
758+ themeToggle . insertAdjacentHTML ( 'beforebegin' , '<language-switcher></language-switcher>' ) ;
759+ console . log ( 'Language switcher created before theme toggle (logged out)' ) ;
760+ }
732761 }
733762 }
734763
0 commit comments