# HG changeset patch # User IBBoard # Date 1273934501 0 # Node ID 13f0ffb012cb8b3490b5bf4898ea646da3c6ed8b # Parent 5182df00c5588e7cfe64d57c22a07316e2eb6b71 Re warfoundry:#272 : Program errors on exit if language file fails to load. * Make ID of translation required * Add method to check if language exists no-open-ticket diff -r 5182df00c558 -r 13f0ffb012cb Lang/Translation.cs --- a/Lang/Translation.cs Sun Apr 18 19:01:36 2010 +0000 +++ b/Lang/Translation.cs Sat May 15 14:41:41 2010 +0000 @@ -48,7 +48,7 @@ public static void InitialiseTranslations(string appPath, string language) { InitialiseTranslations(appPath); - LoadTranslationForLanguage(language); + LoadTranslation(language); } /// @@ -128,18 +128,11 @@ /// The new local language to load /// public static void LoadTranslation(string translationLanguage) - { - if (translationLanguage == "" || translationLanguage == null) - { - throw new ArgumentException("Translation language cannot be null or empty"); + { + if (HasLanguage(translationLanguage)) + { + SetCurrentTranslations(GetTranslationSet(translationLanguage)); } - - LoadTranslationForLanguage(translationLanguage); - } - - private static void LoadTranslationForLanguage(string translationLanguage) - { - SetCurrentTranslations(GetTranslationSet(translationLanguage)); } /// @@ -318,6 +311,11 @@ } return translations; - } + } + + public static bool HasLanguage(string languageCode) + { + return langToTranslationMap.ContainsKey(languageCode); + } } } diff -r 5182df00c558 -r 13f0ffb012cb schemas/translation.xsd --- a/schemas/translation.xsd Sun Apr 18 19:01:36 2010 +0000 +++ b/schemas/translation.xsd Sat May 15 14:41:41 2010 +0000 @@ -3,7 +3,7 @@ - +