diff options
-rw-r--r-- | askbot/context.py | 4 | ||||
-rw-r--r-- | askbot/media/style/style.less | 18 | ||||
-rw-r--r-- | askbot/templates/404.html | 4 | ||||
-rw-r--r-- | askbot/templates/base.html | 6 | ||||
-rw-r--r-- | askbot/templates/meta/bottom_scripts.html | 2 | ||||
-rw-r--r-- | askbot/templates/user_profile/user_email_subscriptions.html | 8 | ||||
-rw-r--r-- | askbot/templates/widget_base.html | 2 | ||||
-rw-r--r-- | askbot/templates/widgets/language_nav.html | 23 |
8 files changed, 42 insertions, 25 deletions
diff --git a/askbot/context.py b/askbot/context.py index 96f30074..523e8e09 100644 --- a/askbot/context.py +++ b/askbot/context.py @@ -6,6 +6,7 @@ import sys from django.conf import settings from django.core.urlresolvers import reverse from django.utils import simplejson +from django.utils.translation import get_language import askbot from askbot import api @@ -30,7 +31,7 @@ def application_settings(request): my_settings = askbot_settings.as_dict() my_settings['LANGUAGE_CODE'] = getattr(request, 'LANGUAGE_CODE', settings.LANGUAGE_CODE) my_settings['MULTILINGUAL'] = getattr(settings, 'ASKBOT_MULTILINGUAL', False) - my_settings['LANGUAGES'] = getattr(settings, 'LANGUAGES', []) + my_settings['LANGUAGES_DICT'] = dict(getattr(settings, 'LANGUAGES', [])) my_settings['ALLOWED_UPLOAD_FILE_TYPES'] = \ settings.ASKBOT_ALLOWED_UPLOAD_FILE_TYPES my_settings['ASKBOT_URL'] = settings.ASKBOT_URL @@ -54,6 +55,7 @@ def application_settings(request): my_settings['USE_ASKBOT_LOGIN_SYSTEM'] = 'askbot.deps.django_authopenid' \ in settings.INSTALLED_APPS context = { + 'current_language_code': get_language(), 'settings': my_settings, 'skin': get_skin(request), 'moderation_items': api.get_info_on_moderation_items(request.user), diff --git a/askbot/media/style/style.less b/askbot/media/style/style.less index b6db03ac..86b75968 100644 --- a/askbot/media/style/style.less +++ b/askbot/media/style/style.less @@ -249,15 +249,23 @@ body.user-messages { } .lang-nav { + position: relative; ul { + display: none; list-style: none; + z-index: 10000; + margin: 0; } - li { - display: inline; - padding-right: 16px; + &:hover ul, + ul:hover { + display: block; + position: absolute; + width: 100px; } - li.current { - font-weight: bold; + li { + color: @info-text; + background: white; + display: block; } } diff --git a/askbot/templates/404.html b/askbot/templates/404.html index 2da99646..565ff164 100644 --- a/askbot/templates/404.html +++ b/askbot/templates/404.html @@ -22,8 +22,8 @@ </u> </div> <script type="text/javascript"> - var GOOG_FIXURL_LANG = '{{settings.LANGUAGE_CODE}}'; - var GOOG_FIXURL_SITE = '{{site_url}}'; + var GOOG_FIXURL_LANG = '{{ language_code }}'; + var GOOG_FIXURL_SITE = '{{ site_url }}'; </script> <script type="text/javascript" src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script> <ul> diff --git a/askbot/templates/base.html b/askbot/templates/base.html index 56288476..6c162057 100644 --- a/askbot/templates/base.html +++ b/askbot/templates/base.html @@ -28,11 +28,13 @@ {{ settings.CUSTOM_HTML_HEAD }} {% endif %} </head> - <body class="{% block body_class %}{% endblock %}{% if user_messages %} user-messages{% endif %}{% if page_class %} {{page_class}}{% endif %}{% if request.user.is_anonymous() %} anon{% endif %} lang-{{settings.LANGUAGE_CODE}}"> + <body class="{% block body_class %}{% endblock %}{% if user_messages %} user-messages{% endif %}{% if page_class %} {{page_class}}{% endif %}{% if request.user.is_anonymous() %} anon{% endif %} lang-{{ language_code }}"> {% include "widgets/system_messages.html" %} {% include "debug_header.html" %} {% if settings.MULTILINGUAL %} - {% include "widgets/language_nav.html" %} + <div class="content-wrapper"> + {% include "widgets/language_nav.html" %} + </div> {% endif %} {% include "custom_header.html" ignore missing %} {% if settings.CUSTOM_HEADER|trim != '' %} diff --git a/askbot/templates/meta/bottom_scripts.html b/askbot/templates/meta/bottom_scripts.html index 4b2bb6f8..c62f26dc 100644 --- a/askbot/templates/meta/bottom_scripts.html +++ b/askbot/templates/meta/bottom_scripts.html @@ -14,7 +14,7 @@ </script> </div> <script type="text/javascript"> - var i18nLang = '{{settings.LANGUAGE_CODE}}'; + var i18nLang = '{{ language_code }}'; var scriptUrl = '/{{settings.ASKBOT_URL}}' var askbotSkin = '{{settings.ASKBOT_DEFAULT_SKIN}}'; var enableMathJax = {% if settings.ENABLE_MATHJAX %}true{% else %}false{% endif %}; diff --git a/askbot/templates/user_profile/user_email_subscriptions.html b/askbot/templates/user_profile/user_email_subscriptions.html index 5ec81203..4692456b 100644 --- a/askbot/templates/user_profile/user_email_subscriptions.html +++ b/askbot/templates/user_profile/user_email_subscriptions.html @@ -33,11 +33,11 @@ action="{% url user_select_languages view_user.id, view_user.username|slugify %}" >{% csrf_token %} <select multiple name="languages"> - {% for lang in settings.LANGUAGES %} + {% for lang in settings.LANGUAGES_DICT %} <option - value="{{ lang[0] }}" - {% if lang[0] in user_languages %}selected="selected"{% endif %} - >{{ lang[1] }}</option> + value="{{ lang }}" + {% if lang in user_languages %}selected="selected"{% endif %} + >{{ settings.LANGUAGES_DICT[lang] }}</option> {% endfor %} </select><br/> <input type="submit" class="select-language" value="{% trans %}Save languages{% endtrans %}" /> diff --git a/askbot/templates/widget_base.html b/askbot/templates/widget_base.html index 44be3e5f..be5bf301 100644 --- a/askbot/templates/widget_base.html +++ b/askbot/templates/widget_base.html @@ -9,7 +9,7 @@ {% block forejs %}{% endblock %} </head> {% endspaceless %} - <body class="lang-{{settings.LANGUAGE_CODE}}"> + <body class="lang-{{ language_code }}"> {% block body%} {% endblock %} {% block content%} diff --git a/askbot/templates/widgets/language_nav.html b/askbot/templates/widgets/language_nav.html index 57603ab5..7db6d559 100644 --- a/askbot/templates/widgets/language_nav.html +++ b/askbot/templates/widgets/language_nav.html @@ -1,9 +1,14 @@ -<ul class="content-wrapper lang-nav"> -{% for language in settings.LANGUAGES %} - <li {% if language[0]|is_current_language() %}class="current"{% endif %}> - <a - href="/{{ language[0] }}/{{ settings.ASKBOT_URL }}" - >{{ language[1] }}</a> - </li> -{% endfor %} -</ul> +<span class="lang-nav"> + <span>{{ settings.LANGUAGES_DICT[language_code] }}</span> + <ul> + {% for lang in settings.LANGUAGES_DICT %} + {% if lang != language_code %} + <li> + <a + href="/{{ lang }}/{{ settings.ASKBOT_URL }}" + >{{ settings.LANGUAGES_DICT[lang] }}</a> + </li> + {% endif %} + {% endfor %} + </ul> +</span> |