Example #1
0
        public Languages()
        {
            m_inAlphabetOrder = new List<Language>();
            m_dictionary = new Dictionary<string, Language>();

            foreach (var culture in CultureInfo.GetCultures(CultureTypes.NeutralCultures))
            {
                if (culture.Name != CultureInfo.InvariantCulture.Name)
                {
                    Language lang = new Language(culture.Name, culture.NativeName, culture.EnglishName);

                    m_inAlphabetOrder.Add(lang);
                    m_dictionary.Add(culture.Name, lang);
                }
            }

            m_inAlphabetOrder.SortByEnglishName();
        }
Example #2
0
        // Обновляет кэш список языков для перевода на основании данных из БД
        private void UpdateTranslationLanguages()
        {
            // Получаем и кэшируем список статей из репозитория
            string[] languageCodes = m_repository.GetTranslationLanguageCodes();

            List<Logic.Languages.Language> languagesList = new List<Logic.Languages.Language>(languageCodes.Length);

            foreach (var languageCode in languageCodes)
                languagesList.Add(Global.Languages.GetByCode(languageCode));

            // Сортируем по английскому имени (при запросе из базы такая сортировка невозможна, так как база хранит только коды языков)
            languagesList.SortByEnglishName();

            m_translationLanguages = languagesList.ToArray();
        }