Skip to content

Commit

Permalink
FWF-3414 [Bugfix] fixed user data not updating when language change (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
shuhaib-aot authored Jul 16, 2024
1 parent 6c881eb commit fbdfa19
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 19 deletions.
23 changes: 12 additions & 11 deletions forms-flow-nav/src/Navbar.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,7 @@ const NavBar = React.memo(({ props }) => {
const isAuthenticated = instance?.isAuthenticated();
const { pathname } = location;
const [userDetail, setUserDetail] = React.useState({});
const savedLanguage = localStorage.getItem("lang");
const [lang, setLang] = React.useState(savedLanguage);
const [lang, setLang] = React.useState();
const userRoles = JSON.parse(
StorageService.get(StorageService.User.USER_ROLE)
);
Expand Down Expand Up @@ -171,7 +170,7 @@ const NavBar = React.memo(({ props }) => {
useEffect(() => {
fetchSelectLanguages((data) => {
const tenantdata = JSON.parse(StorageService.get("TENANT_DATA"));
const userLanguageList = (MULTITENANCY_ENABLED && tenantdata?.details.langList) || USER_LANGUAGE_LIST;
const userLanguageList = (MULTITENANCY_ENABLED && tenantdata?.details?.langList) || USER_LANGUAGE_LIST;
let userLanguagesArray = [];
if (typeof userLanguageList === 'object') {
userLanguagesArray = Object.values(userLanguageList);
Expand Down Expand Up @@ -202,16 +201,18 @@ const NavBar = React.memo(({ props }) => {
* This effect runs whenever the instance or tenant data changes.
*/
React.useEffect(() => {
const locale =
instance?.getUserData()?.locale ||
tenant?.tenantData?.details?.locale ||
lang ||
LANGUAGE;
setLang(locale);
}, [instance, tenant.tenantData]);
if(userDetail){
const locale =
userDetail?.locale ||
tenant?.tenantData?.details?.locale ||
LANGUAGE;
setLang(locale);
}
}, [userDetail, tenant.tenantData]);

const handleOnclick = (selectedLang) => {
setLang(selectedLang);
setLang(selectedLang)
setUserDetail(prev => ({...prev,locale:selectedLang}))
updateUserlang(selectedLang, instance);
};

Expand Down
10 changes: 2 additions & 8 deletions forms-flow-nav/src/services/language/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,8 @@ export const updateUserlang = (data, instance) => {
{ locale: data },
StorageService.get(StorageService.User.AUTH_TOKEN)
)
.then((res) => {
if (res.data) {
localStorage.setItem("lang", data);
//need to check why we want invoke this function
// instance.initKeycloak();
} else {
//toast.error(<Translation>{(t)=>t("Failed")}</Translation>);
}
.then(() => {
localStorage.setItem("lang", data);
})
.catch((error) => {
console.log(error);
Expand Down
1 change: 1 addition & 0 deletions forms-flow-service/src/keycloak/KeycloakService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ import Keycloak, {

private logout(): void {
this.kc?.logout();
StorageService.clear()
}

/**
Expand Down

0 comments on commit fbdfa19

Please sign in to comment.