@Override public void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) { final IUserInstance userInstance = this.userInstanceManager.getUserInstance(request); final LocaleManager localeManager = userInstance.getLocaleManager(); localeManager.setSessionLocales(Collections.singletonList(locale)); // if the current user is logged in, also update the persisted user locale final IUserInstance ui = userInstanceManager.getUserInstance(request); final IPerson person = ui.getPerson(); if (!person.isGuest()) { try { localeManager.setUserLocales(Collections.singletonList(locale)); localeStore.updateUserLocales(person, new Locale[] {locale}); final IUserPreferencesManager upm = ui.getPreferencesManager(); upm.getUserLayoutManager().loadUserLayout(); } catch (Exception e) { throw new PortalException(e); } } } }
@Override public void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) { final IUserInstance userInstance = this.userInstanceManager.getUserInstance(request); final LocaleManager localeManager = userInstance.getLocaleManager(); localeManager.setSessionLocales(Collections.singletonList(locale)); // if the current user is logged in, also update the persisted user locale final IUserInstance ui = userInstanceManager.getUserInstance(request); final IPerson person = ui.getPerson(); if (!person.isGuest()) { try { localeManager.setUserLocales(Collections.singletonList(locale)); localeStore.updateUserLocales(person, new Locale[] {locale}); final IUserPreferencesManager upm = ui.getPreferencesManager(); upm.getUserLayoutManager().loadUserLayout(); } catch (Exception e) { throw new PortalException(e); } } } }
if (!person.isGuest()) { try { localeManager.setUserLocales(Collections.singletonList(userLocale)); localeStore.updateUserLocales(person, new Locale[] {userLocale});