/// <summary>
 /// Set active locales.
 /// </summary>
 /// <param name="locales">Active locales.</param>
 protected override void SetLocales(LocaleList locales)
 {
     lock (this)
     {
         Locales = locales;
     }
 }
        /// <summary>
        /// Get all locales that is used in this application.
        /// </summary>
        /// <param name="userContext">User context.</param>
        /// <returns>All active locales.</returns>
        public virtual LocaleList GetUsedLocales(IUserContext userContext)
        {
            LocaleList usedLocales;

            usedLocales = new LocaleList();
            switch (Configuration.CountryId)
            {
            case CountryId.Norway:
                usedLocales.Add(GetLocale(userContext, LocaleId.nb_NO));
                usedLocales.Add(GetLocale(userContext, LocaleId.en_GB));
                break;

            case CountryId.Sweden:
                usedLocales.Add(GetLocale(userContext, LocaleId.sv_SE));
                usedLocales.Add(GetLocale(userContext, LocaleId.en_GB));
                break;

            default:
                throw new ApplicationException("Not handled country = " + Configuration.CountryId);
            }
            return(usedLocales);
        }