void MvcApplication_PostAuthenticateRequest(object sender, EventArgs e) { var authCookie = HttpContext.Current.Request.Cookies[FormsAuthentication.FormsCookieName]; if (authCookie != null) { var identity = UserIdentity.Deserialize(authCookie.Value); if (identity == null) { FormsAuthentication.SignOut(); } else { var principal = new GenericPrincipal(identity, null); HttpContext.Current.User = principal; System.Threading.Thread.CurrentPrincipal = principal; Context.User = new GenericPrincipal(identity, null); // Set the culture GlobalUtilities.SetCurrentCulture(Identity.Current.Market.CultureCode); // Set the language System.Threading.Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture(GlobalUtilities.GetSelectedLanguage()); } } }
void MvcApplication_PostAuthenticateRequest(object sender, EventArgs e) { Market market; Language language; var context = this.Context.Request.RequestContext.HttpContext; var authCookie = HttpContext.Current.Request.Cookies[FormsAuthentication.FormsCookieName]; if (authCookie != null) { var identity = UserIdentity.Deserialize(authCookie.Value); if (identity == null) { FormsAuthentication.SignOut(); return; } else { var principal = new GenericPrincipal(identity, null); HttpContext.Current.User = principal; System.Threading.Thread.CurrentPrincipal = principal; Context.User = new GenericPrincipal(identity, null); // user locked market market = Identity.Current.Market; // get the default language based on user market var defaultLanguage = Identity.Current.Language; // get the selected culture (default to user's preferred market language) var selectedCultureCode = GlobalUtilities.GetSelectedCultureCode(context, defaultLanguage.CultureCode); // set the language based on selection language = GlobalUtilities.GetLanguage(selectedCultureCode, market); } } else { // get the market based on selection market = GlobalUtilities.GetCurrentMarket(context); // get the default language based on market var defaultLanguage = GlobalUtilities.GetLanguage(null, market); // get the selected culture (default to current market default language) var selectedCultureCode = GlobalUtilities.GetSelectedCultureCode(context, defaultLanguage.CultureCode); // set the language based on selection language = GlobalUtilities.GetLanguage(selectedCultureCode, market); } // Set the culture (date, number, currency formats) GlobalUtilities.SetCurrentCulture(market.CultureCode); // set site language GlobalUtilities.SetCurrentUICulture(language.CultureCode); }
public static Language GetUserLanguage(HttpRequestBase request) { // Check for the cookie first var cookie = request.Cookies[GlobalSettings.Globalization.LanguageCookieName]; if (cookie != null && !cookie.Value.IsEmpty()) { return(Exigo.GetLanguageByCultureCode(cookie.Value)); } // If we're signed in, let's use their account's language preference if (request.IsAuthenticated) { return(Exigo.GetLanguageByID(Identity.Current.LanguageID)); } // Nothing yet? We must be dealing with an orphan who's never visited the site before. // Let's use their machine default, assuming we support that language. var cultureInfo = GlobalUtilities.GetRequestedLanguageCultureInfo(request); return(Exigo.GetLanguageByCultureCode(cultureInfo.Name)); }
/// <summary> /// Gets a formatted display name based on the company's rules. The default setting is that if a company name is found display the company name; otherwise, display the first and last name. /// </summary> /// <returns>The formatted display name.</returns> public static string GetDisplayName(string companyName, string firstName, string lastName) { return(GlobalUtilities.Coalesce(companyName, firstName + " " + lastName)); }