private TypeLocalizationDocument GetOrCreateLanguage(CultureInfo culture) { TypeLocalizationDocument document; lock (Cache) { if (Cache.TryGetValue(culture.LCID, out document)) { return(document); } } document = _documentSession.Load <TypeLocalizationDocument>(culture.Name); if (document == null) { _logger.Debug("Failed to find document for " + culture.Name + ", creating it."); var defaultLang = DefaultUICulture.Is(culture) ? new TypeLocalizationDocument { Id = culture.Name, Prompts = new List <TypePromptDocument>() } : GetOrCreateLanguage(DefaultUICulture.Value); document = defaultLang.Clone(culture); _documentSession.Store(document); _documentSession.SaveChanges(); } lock (Cache) Cache[culture.LCID] = document; return(document); }
public void ChangeCultureToGbAndVerify() { DefaultUICulture.Set(new CultureInfo("en-gb")); Assert.AreEqual(new CultureInfo("en-gb").LCID, DefaultUICulture.LCID); Assert.IsTrue(DefaultUICulture.Is(new CultureInfo("en"))); Assert.IsTrue(DefaultUICulture.Is(new CultureInfo("en-gb"))); Assert.IsFalse(DefaultUICulture.IsActive); }
public void ChangeCultureToSwedishAndVerify() { DefaultUICulture.Set(new CultureInfo(1053)); Assert.AreEqual(1053, DefaultUICulture.LCID); Assert.IsFalse(DefaultUICulture.Is(new CultureInfo("en"))); Assert.IsTrue(DefaultUICulture.Is(new CultureInfo(1053))); Assert.IsFalse(DefaultUICulture.IsActive); Assert.IsFalse(DefaultUICulture.IsEnglish); }
public void DefaulIsUsEnglish() { Assert.IsTrue(DefaultUICulture.Is(new CultureInfo("en-us"))); }
public void DefaultIsAlsoNeutral() { Assert.IsTrue(DefaultUICulture.Is(new CultureInfo("en"))); }
/// <summary> /// Format output for a missing prompt /// </summary> /// <param name="text">View text</param> /// <returns>Plain text if default culture; otherwise culture tagged text.</returns> /// <example> /// Default culture: /// <code> /// localizer.FormatMissingPrompt("Hello world"); // --> hello world /// </code> /// Another culture: /// <code> /// localizer.FormatMissingPrompt("Hello world"); // --> [sv-se: hello world] /// </code> /// </example> protected virtual string FormatMissingPrompt(string text) { return(DefaultUICulture.Is(CultureInfo.CurrentUICulture) ? text : string.Format("{1}:[{0}]", text, CultureInfo.CurrentUICulture)); }