Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

fixed #2089: added language bidirectional support and updated the adm…

…in to use it. thanks meir@mksoft!

git-svn-id: http://code.djangoproject.com/svn/django/trunk@3091 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 7e88ec527107bd2c9023d48bcf177636eebc7e7a 1 parent 05b1a70
Georg Bauer authored
View
5 django/contrib/admin/media/css/base_rtl.css
@@ -0,0 +1,5 @@
+@import url('base.css');
+
+body {
+ direction: rtl;
+}
View
7 django/contrib/admin/media/css/login_rtl.css
@@ -0,0 +1,7 @@
+@import url('login.css');
+@import url('base_rtl.css');
+@import url('layout_rtl.css');
+
+.login .form-row { float:right; }
+.login .form-row label { float:right; padding-left:0.5em; padding-right:0; text-align:left;}
+.login .submit-row { clear:both; padding:1em 9.4em 0 0; }
View
2  django/contrib/admin/templates/admin/base.html
@@ -2,7 +2,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" lang="{{ LANGUAGE_CODE }}" xml:lang="{{ LANGUAGE_CODE }}">
<head>
<title>{% block title %}{% endblock %}</title>
-<link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/base.css{% endblock %}" />
+<link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/base{% if LANGUAGE_BIDI %}_rtl{% endif %}.css{% endblock %}" />
{% block extrastyle %}{% endblock %}
{% block extrahead %}{% endblock %}
</head>
View
2  django/contrib/admin/templates/admin/login.html
@@ -1,7 +1,7 @@
{% extends "admin/base_site.html" %}
{% load i18n %}
-{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/login.css{% endblock %}
+{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/login{% if LANGUAGE_BIDI %}_rtl{% endif %}.css{% endblock %}
{% block bodyclass %}login{% endblock %}
{% block content_title %}{% endblock %}
{% block breadcrumbs %}{% endblock %}
View
4 django/core/context_processors.py
@@ -36,6 +36,10 @@ def i18n(request):
context_extras['LANGUAGE_CODE'] = request.LANGUAGE_CODE
else:
context_extras['LANGUAGE_CODE'] = settings.LANGUAGE_CODE
+
+ from django.utils import translation
+ context_extras['LANGUAGE_BIDI'] = translation.get_language_bidi()
+
return context_extras
def request(request):
View
7 docs/i18n.txt
@@ -230,12 +230,17 @@ Each ``RequestContext`` has access to two translation-specific variables:
language code and the second is the language name (in that language).
* ``LANGUAGE_CODE`` is the current user's preferred language, as a string.
Example: ``en-us``. (See "How language preference is discovered", below.)
+ * ``LANGUAGE_BIDI`` is the current language's direction. If True, it's a
+ right-to-left language, e.g: Hebrew, Arabic. If False it's a
+ left-to-right language, e.g: English, French, German etc.
+
If you don't use the ``RequestContext`` extension, you can get those values with
-two tags::
+three tags::
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
+ {% get_current_language_bidi as LANGUAGE_BIDI %}
These tags also require a ``{% load i18n %}``.
Please sign in to comment.
Something went wrong with that request. Please try again.