예제 #1
0
        /// <inheritdoc />
        /// <summary>
        /// Returns all DNN Cultures with active / inactive state
        /// </summary>
        public List <TempTempCulture> CulturesWithState(int tenantId, int zoneId)
        {
            // note:
            var availableEavLanguages = new ZoneRuntime(zoneId, Log).Languages(true);
            var defaultLanguageCode   = new PortalSettings(tenantId).DefaultLanguage;

            return((from c in LocaleController.Instance.GetLocales(tenantId)
                    select new TempTempCulture(
                        c.Value.Code,
                        c.Value.Text,
                        availableEavLanguages.Any(a => a.Active && a.Matches(c.Value.Code)))
                    )
                   .OrderByDescending(c => c.Key == defaultLanguageCode)
                   .ThenBy(c => c.Key).ToList());
        }
예제 #2
0
        /// <summary>
        /// Returns all DNN Cultures with active / inactive state
        /// </summary>
        public List <TempTempCulture> CulturesWithState(int tennantId, int zoneId)
        {
            // note:
            var availableEavLanguages = new ZoneRuntime(zoneId, Log).Languages(true);
            var defaultLanguageCode   = new PortalSettings(tennantId).DefaultLanguage;
            var defaultLanguage       = availableEavLanguages
                                        .FirstOrDefault(p => p.Matches(defaultLanguageCode));

            //var defaultLanguageIsActive = defaultLanguage?.Active == true;

            return((from c in LocaleController.Instance.GetLocales(tennantId)
                    select new TempTempCulture(
                        c.Value.Code,
                        c.Value.Text,
                        availableEavLanguages.Any(a => a.Active && a.Matches(c.Value.Code))
                        //,
                        //string.Equals(c.Value.Code, defaultLanguageCode, StringComparison.InvariantCultureIgnoreCase) && !defaultLanguageIsActive ||
                        //defaultLanguageIsActive && !string.Equals(c.Value.Code, defaultLanguageCode,
                        //    StringComparison.InvariantCultureIgnoreCase)
                        )
                    )
                   .OrderByDescending(c => c.Key == defaultLanguageCode)
                   .ThenBy(c => c.Key).ToList());
        }