]> Untitled Git - lemmy.git/commitdiff
Fixing language setting issue. Fixes #1041
authorDessalines <tyhou13@gmx.com>
Thu, 30 Jul 2020 02:29:41 +0000 (22:29 -0400)
committerDessalines <tyhou13@gmx.com>
Thu, 30 Jul 2020 02:29:41 +0000 (22:29 -0400)
ui/src/components/navbar.tsx
ui/src/components/user.tsx
ui/src/utils.ts

index 2986ce7eac897ff400731580a487d533e0c73bea..6418bb2223dbad3b6319c8d121950d799f21e75b 100644 (file)
@@ -30,6 +30,7 @@ import {
   messageToastify,
   md,
   setTheme,
+  getLanguage,
 } from '../utils';
 import { i18n } from '../i18next';
 
@@ -435,7 +436,7 @@ export class Navbar extends Component<any, NavbarState> {
           this.requestNotificationPermission();
           this.fetchUnreads();
           setTheme(data.my_user.theme, true);
-          i18n.changeLanguage(data.my_user.lang);
+          i18n.changeLanguage(getLanguage());
         }
         this.state.isLoggedIn = true;
       }
index e4d4439b1ac03e1a94e9e2bb9c9d607797865f23..d0dcdf55e5c097a05919e3fd4a80e282024805a0 100644 (file)
@@ -30,6 +30,7 @@ import {
   showAvatars,
   toast,
   setupTippy,
+  getLanguage,
 } from '../utils';
 import { UserListing } from './user-listing';
 import { SortSelect } from './sort-select';
@@ -877,7 +878,7 @@ export class User extends Component<any, UserState> {
 
   handleUserSettingsLangChange(i: User, event: any) {
     i.state.userSettingsForm.lang = event.target.value;
-    i18n.changeLanguage(i.state.userSettingsForm.lang);
+    i18n.changeLanguage(getLanguage(i.state.userSettingsForm.lang));
     i.setState(i.state);
   }
 
index 892516bff2a5cf8946e32c828f8892f6a0edd652..fa7f1297824891364cdf0a80747740960b41f384 100644 (file)
@@ -350,9 +350,9 @@ export function debounce(
   };
 }
 
-export function getLanguage(): string {
+export function getLanguage(override: string): string {
   let user = UserService.Instance.user;
-  let lang = user && user.lang ? user.lang : 'browser';
+  let lang = override || (user && user.lang ? user.lang : 'browser');
 
   if (lang == 'browser') {
     return getBrowserLanguage();