private void SetLanguage() { PostFromHomeViewModel postModel = new PostFromHomeViewModel(); RequestCulture requestLanguage = Request.HttpContext.Features.Get <IRequestCultureFeature>().RequestCulture; string lang = GetCookieValue(SessionValues.PostLanguage); if (lang != null) { SupportedLanguage langEnum = (SupportedLanguage)Enum.Parse(typeof(SupportedLanguage), lang); postModel.DefaultLanguage = langEnum; } else { if (!User.Identity.IsAuthenticated) { SetAspNetCultureCookie(requestLanguage); postModel.DefaultLanguage = base.SetLanguageFromCulture(requestLanguage.UICulture.Name); } else { UserPreferencesViewModel userPrefs = userPreferencesAppService.GetByUserId(CurrentUserId); if (userPrefs != null && userPrefs.Id != Guid.Empty) { SetAspNetCultureCookie(userPrefs.UiLanguage); SetCookieValue(SessionValues.PostLanguage, postModel.DefaultLanguage.ToString(), 7); postModel.DefaultLanguage = userPrefs.UiLanguage; } else { SetAspNetCultureCookie(requestLanguage); postModel.DefaultLanguage = base.SetLanguageFromCulture(requestLanguage.UICulture.Name); } } } ViewBag.PostFromHome = postModel; }
private void SetLanguage() { PostFromHomeViewModel postModel = new PostFromHomeViewModel(); string postLanguageFromCookie = GetCookieValue(SessionValues.PostLanguage); if (postLanguageFromCookie != null) { List <SupportedLanguage> allLanguages = Enum.GetValues(typeof(SupportedLanguage)).Cast <SupportedLanguage>().ToList(); SupportedLanguage langEnum = allLanguages.FirstOrDefault(x => x.ToUiInfo().Locale.Equals(postLanguageFromCookie)); postModel.DefaultLanguage = langEnum; } else { if (User.Identity.IsAuthenticated) { SetCookieValue(SessionValues.PostLanguage, base.CurrentLocale, 7); } postModel.DefaultLanguage = base.SetLanguageFromCulture(base.CurrentLocale); } ViewBag.PostFromHome = postModel; }