diff options
author | Adolfo Fitoria <adolfo.fitoria@gmail.com> | 2013-08-05 13:22:55 -0600 |
---|---|---|
committer | Adolfo Fitoria <adolfo.fitoria@gmail.com> | 2013-08-05 13:22:55 -0600 |
commit | 44222153ba48eb93e17fe4fabc6de823544ffa12 (patch) | |
tree | 9ee9ca5501df66f012a75dd48816a3286a53f384 | |
parent | d2186afd8ef067d8294eceee7ccaea84ccb78f47 (diff) | |
download | askbot-44222153ba48eb93e17fe4fabc6de823544ffa12.tar.gz askbot-44222153ba48eb93e17fe4fabc6de823544ffa12.tar.bz2 askbot-44222153ba48eb93e17fe4fabc6de823544ffa12.zip |
cleaned up language selection feature, middleware not longer required, setting template updated
-rw-r--r-- | askbot/conf/skin_general_settings.py | 4 | ||||
-rw-r--r-- | askbot/setup_templates/settings.py | 4 | ||||
-rw-r--r-- | askbot/setup_templates/settings.py.mustache | 4 | ||||
-rw-r--r-- | askbot/skins/loaders.py | 10 | ||||
-rw-r--r-- | askbot/utils/translation.py | 7 |
5 files changed, 22 insertions, 7 deletions
diff --git a/askbot/conf/skin_general_settings.py b/askbot/conf/skin_general_settings.py index a46b4e63..11d201ad 100644 --- a/askbot/conf/skin_general_settings.py +++ b/askbot/conf/skin_general_settings.py @@ -30,7 +30,9 @@ settings.register( ) ) -if not getattr(django_settings, 'ASKBOT_MULTILINGUAL', False): +#cannot use HAS_ASKBOT_LOCALE_MIDDLEWARE due to circular import error +if not getattr(django_settings, 'ASKBOT_MULTILINGUAL', False) and \ + 'askbot.middleware.locale.LocaleMiddleware' in django_settings.MIDDLEWARE_CLASSES: settings.register( values.StringValue( GENERAL_SKIN_SETTINGS, diff --git a/askbot/setup_templates/settings.py b/askbot/setup_templates/settings.py index c9778263..c7745b14 100644 --- a/askbot/setup_templates/settings.py +++ b/askbot/setup_templates/settings.py @@ -100,7 +100,9 @@ MIDDLEWARE_CLASSES = ( #'django.middleware.gzip.GZipMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', - 'askbot.middleware.locale.LocaleMiddleware', + ## Enable the following middleware if you want to enable + ## language selection in the site settings. + #'askbot.middleware.locale.LocaleMiddleware', #'django.middleware.cache.UpdateCacheMiddleware', 'django.middleware.common.CommonMiddleware', #'django.middleware.cache.FetchFromCacheMiddleware', diff --git a/askbot/setup_templates/settings.py.mustache b/askbot/setup_templates/settings.py.mustache index 8cd32e48..55037b24 100644 --- a/askbot/setup_templates/settings.py.mustache +++ b/askbot/setup_templates/settings.py.mustache @@ -104,7 +104,9 @@ MIDDLEWARE_CLASSES = ( #'django.middleware.gzip.GZipMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', - 'askbot.middleware.locale.LocaleMiddleware', + ## Enable the following middleware if you want to enable + ## language selection in the site settings. + #'askbot.middleware.locale.LocaleMiddleware', #'django.middleware.cache.UpdateCacheMiddleware', 'django.middleware.common.CommonMiddleware', #'django.middleware.cache.FetchFromCacheMiddleware', diff --git a/askbot/skins/loaders.py b/askbot/skins/loaders.py index 82c235ca..afdf758e 100644 --- a/askbot/skins/loaders.py +++ b/askbot/skins/loaders.py @@ -12,7 +12,7 @@ from jinja2.exceptions import TemplateNotFound from jinja2.utils import open_if_exists from askbot.conf import settings as askbot_settings from askbot.skins import utils -from askbot.utils.translation import get_language +from askbot.utils.translation import get_language, HAS_ASKBOT_LOCALE_MIDDLEWARE from coffin import template template.add_to_builtins('askbot.templatetags.extra_filters_jinja') @@ -94,8 +94,12 @@ def load_skins(language_code): return skins SKINS = dict() -for lang in dict(django_settings.LANGUAGES).keys(): - SKINS.update(load_skins(lang)) +if getattr(django_settings, 'ASKBOT_MULTILINGUAL', False) or\ + HAS_ASKBOT_LOCALE_MIDDLEWARE: + for lang in dict(django_settings.LANGUAGES).keys(): + SKINS.update(load_skins(lang)) +else: + SKINS = load_skins(django_settings.LANGUAGE_CODE) def get_skin(): """retreives the skin environment diff --git a/askbot/utils/translation.py b/askbot/utils/translation.py index f9ec0cf1..7e1231d3 100644 --- a/askbot/utils/translation.py +++ b/askbot/utils/translation.py @@ -5,5 +5,10 @@ from django.utils import translation def get_language(): if getattr(django_settings, 'ASKBOT_MULTILINGUAL', False): return translation.get_language() - else: + elif HAS_ASKBOT_LOCALE_MIDDLEWARE: return askbot_settings.ASKBOT_LANGUAGE + else: + return django_settings.LANGUAGE_CODE + +HAS_ASKBOT_LOCALE_MIDDLEWARE = 'askbot.middleware.locale.LocaleMiddleware' in \ + django_settings.MIDDLEWARE_CLASSES |