savannah-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Savannah-cvs] [SCM] Savane-cleanup framework branch, master, updated. 4


From: Sylvain Beucler
Subject: [Savannah-cvs] [SCM] Savane-cleanup framework branch, master, updated. 49a071857c2e36449643a3683cf6d019a921bce3
Date: Sat, 24 Jul 2010 18:08:04 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Savane-cleanup framework".

The branch, master has been updated
       via  49a071857c2e36449643a3683cf6d019a921bce3 (commit)
      from  5d9ff62fdbd9b689267017867704114319699ad7 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.savannah.gnu.org/cgit/savane-cleanup/framework.git/commit/?id=49a071857c2e36449643a3683cf6d019a921bce3

commit 49a071857c2e36449643a3683cf6d019a921bce3
Author: Sylvain Beucler <address@hidden>
Date:   Sat Jul 24 20:07:57 2010 +0200

    Setup i18n framework

diff --git a/savane/my/urls.py b/savane/my/urls.py
index d078972..1e34866 100644
--- a/savane/my/urls.py
+++ b/savane/my/urls.py
@@ -49,7 +49,7 @@ urlpatterns = decorated_patterns ('', login_required,
   url(r'^$', direct_to_template,
       { 'template' : 'my/index.html',
         'extra_context' : { 'title' : 'My account', }, },
-      name='savane.my.views.index'),
+      name='savane.my.index'),
   url('^conf/$', views.sv_conf,
       { 'extra_context' : {'title' : 'Contact info', } }),
   url('^conf/resume_skill/$', views.sv_resume_skill,
@@ -57,6 +57,12 @@ urlpatterns = decorated_patterns ('', login_required,
   url('^conf/ssh_gpg/$', views.sv_ssh_gpg,
       { 'extra_context' : {'title' : 'SSH & GPG', } }),
   url('^conf/ssh_gpg/delete/$', views.sv_ssh_delete),
+  url('^i18n/$', direct_to_template,
+      { 'template' : 'my/i18n.html',
+        'extra_context' : {'title' : 'Language', } },
+      name='savane.my.language'),
+  # TODO: set_lang only lasts for the user's session
+  url('^i18n/', include('django.conf.urls.i18n')),
   url(r'^groups/$', only_mine(object_list),
       { 'queryset' : auth_models.Group.objects.all(),
         'extra_context' : { 'title' : "My groups", },
diff --git a/savane/my/views.py b/savane/my/views.py
index 6b2e369..10e1273 100644
--- a/savane/my/views.py
+++ b/savane/my/views.py
@@ -169,6 +169,7 @@ def sv_ssh_delete(request):
     else:
         return {}
 
+
 class MailForm( forms.Form ):
     email = forms.EmailField(required=True)
     action = forms.CharField( widget=forms.HiddenInput, required=True, 
initial='update_mail' )
diff --git a/settings_default.py b/settings_default.py
index 3690749..b965d2f 100644
--- a/settings_default.py
+++ b/settings_default.py
@@ -32,6 +32,21 @@ TIME_ZONE = 'America/Chicago'
 # http://www.i18nguy.com/unicode/language-identifiers.html
 LANGUAGE_CODE = 'en-us'
 
+# 
http://docs.djangoproject.com/en/dev/topics/i18n/deployment/#how-django-discovers-language-preference
+ugettext = lambda s: s
+LANGUAGES = (
+    ('ca',    ugettext('Catalan')),
+    ('de',    ugettext('German')),
+    ('en',    ugettext('English')),
+    ('es',    ugettext('Spanish')),
+    ('fr',    ugettext('French')),
+    ('it',    ugettext('Italian')),
+    ('ja',    ugettext('Japanese')),
+    ('pt_BR', ugettext('Portuguese (Brazil)')),
+    ('ru',    ugettext('Russian')),
+    ('sv',    ugettext('Swedish')),
+)
+
 SITE_ID = 1
 
 # If you set this to False, Django will make some optimizations so as not
@@ -61,6 +76,7 @@ TEMPLATE_CONTEXT_PROCESSORS = 
global_settings.TEMPLATE_CONTEXT_PROCESSORS + (
 MIDDLEWARE_CLASSES = (
     'django.middleware.common.CommonMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
+    'django.middleware.locale.LocaleMiddleware',
     'django.middleware.csrf.CsrfViewMiddleware',
     'django.contrib.auth.middleware.AuthenticationMiddleware',
     'django.contrib.messages.middleware.MessageMiddleware',
diff --git a/templates/base.html b/templates/base.html
index bace42f..886a609 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
-<html xmlns="http://www.w3.org/1999/xhtml";>
+<html xmlns="http://www.w3.org/1999/xhtml"; lang="{{LANGUAGE_CODE}}" 
xml:lang="{{LANGUAGE_CODE}}">
   <head>
     {% load i18n %}
     <title>
@@ -17,7 +17,7 @@
         <li><a href="/"><img 
src="{{STATIC_MEDIA_URL}}savane/images/floating.png" alt="Back to homepage" 
border="0" width="118" height="100" /></a></li>
         {% if user.is_authenticated %}
           <li class="menutitle">Connected as {{ user.username}}</li>
-          <li class="menuitem"><a href="{% url savane.my.views.index %}">My 
account</a></li>
+          <li class="menuitem"><a href="{% url savane.my.index %}">My 
account</a></li>
           <li class="menuitem"><a href="{% url 
django.contrib.auth.views.logout %}">Logout</a></li>
         {% else %}
           <li class="menutitle">Login status</li>
diff --git a/templates/my/i18n.html b/templates/my/i18n.html
new file mode 100644
index 0000000..6f2f8bc
--- /dev/null
+++ b/templates/my/i18n.html
@@ -0,0 +1,27 @@
+{% extends "base.html" %}
+
+{% comment %}
+Cf. 
http://docs.djangoproject.com/en/dev/topics/i18n/internationalization/#the-set-language-redirect-view
+{% endcomment %}
+
+{% block content %}
+
+<form action="{% url django.views.i18n.set_language %}" method="post">
+{% csrf_token %}
+<input name="next" type="hidden" value="{% url savane.my.index %}" />
+<select name="language">
+{% for lang in LANGUAGES %}
+<option value="{{ lang.0 }}">{{ lang.1 }}</option>
+{% endfor %}
+</select>
+<input type="submit" value="Go" />
+</form>
+
+{% endblock %}
+{% comment %}
+Local Variables: **
+mode: django-html **
+tab-width: 4 **
+indent-tabs-mode: nil **
+End: **
+{% endcomment %}
diff --git a/templates/my/index.html b/templates/my/index.html
index 74afc2d..59c1493 100644
--- a/templates/my/index.html
+++ b/templates/my/index.html
@@ -12,6 +12,7 @@
       <a href="{% url savane.my.group_list %}">My groups</a><br />
       <a href="{% url savane.my.membership_list %}">My memberships</a><br />
       <a href="{% url django.contrib.auth.views.password_change %}">Change my 
password</a><br />
+      <a href="{% url savane.my.language %}">Set language</a> 
({{LANGUAGE_CODE}})<br />
     </p>
   </div>
 
diff --git a/templates/svmain/group_list.html b/templates/svmain/group_list.html
index c61391f..7bb310d 100644
--- a/templates/svmain/group_list.html
+++ b/templates/svmain/group_list.html
@@ -1,11 +1,12 @@
 {% extends "base.html" %}
+{% load i18n %}
 
 {% block content %}
 
 {% include "svmain/pagination.inc.html" %}
 
 <form action="." method="GET">
-  Search: <input type="text" name="q" value="{{q}}" />
+  {% trans "Search" %}: <input type="text" name="q" value="{{q}}" />
 </form>
 
 {% if object_list %}
@@ -15,7 +16,7 @@
     {% endfor %}
     </ul>
 {% else %}
-    <p>No groups.</p>
+    <p>{% trans "No groups." %}</p>
 {% endif %}
 
 {% endblock %}
diff --git a/templates/svmain/pagination.inc.html 
b/templates/svmain/pagination.inc.html
index 5d79fba..d9bb094 100644
--- a/templates/svmain/pagination.inc.html
+++ b/templates/svmain/pagination.inc.html
@@ -1,11 +1,13 @@
+{% load i18n %}
+
 {% if page_obj %}
 <div class="pagination">
     <span class="step-links">
       {% if paginator.num_pages > 1 %}
         {% if not page_obj.has_previous %}
-         préc.
+         {% trans "previous" %}
        {% else %}
-          <a href="?page={{ page_obj.previous_page_number }}">préc.</a>
+          <a href="?page={{ page_obj.previous_page_number }}">{% trans 
"previous" %}</a>
         {% endif %}
        &lt;
        {% for number in paginator.page_range %}
@@ -17,16 +19,23 @@
         {% endfor %}
        &gt;
         {% if not page_obj.has_next %}
-           suiv.
+           {% trans "next" %}
        {% else %}
-            <a href="?page={{ page_obj.next_page_number }}">suiv.</a>
+            <a href="?page={{ page_obj.next_page_number }}">{% trans "next" 
%}</a>
         {% endif %}
 
         <span class="current">
-            - Page {{ page_obj.number }} sur {{ paginator.num_pages }} 
({{paginator.count}})
+           -
+            {% blocktrans with page_obj.number as number and 
paginator.num_pages as num_pages and paginator.count as count %}
+            Page {{ page_obj.number }} on {{ num_pages }} ({{ count }})
+           {% endblocktrans %}
         </span>
       {% else %}
-       ({{paginator.count}} element(s))
+        {% blocktrans count paginator.count as count %}
+       {{count}} element
+       {% plural %}
+       {{count}} elements
+       {% endblocktrans %}
       {% endif %}
     </span>
 </div>
diff --git a/templates/svmain/user_list.html b/templates/svmain/user_list.html
index 1408bf8..92206ce 100644
--- a/templates/svmain/user_list.html
+++ b/templates/svmain/user_list.html
@@ -1,11 +1,12 @@
 {% extends "base.html" %}
+{% load i18n %}
 
 {% block content %}
 
 {% include "svmain/pagination.inc.html" %}
 
 <form action="." method="GET">
-  Rechercher: <input type="text" name="q" value="{{q}}" />
+  {% trans "Search" %}: <input type="text" name="q" value="{{q}}" />
 </form>
 
 {% if object_list %}
@@ -15,7 +16,7 @@
     {% endfor %}
     </ul>
 {% else %}
-    <p>No users.</p>
+    <p>{% trans "No users." %}</p>
 {% endif %}
 
 {% endblock %}

-----------------------------------------------------------------------

Summary of changes:
 savane/my/urls.py                    |    8 +++++++-
 savane/my/views.py                   |    1 +
 settings_default.py                  |   16 ++++++++++++++++
 templates/base.html                  |    4 ++--
 templates/my/i18n.html               |   27 +++++++++++++++++++++++++++
 templates/my/index.html              |    1 +
 templates/svmain/group_list.html     |    5 +++--
 templates/svmain/pagination.inc.html |   21 +++++++++++++++------
 templates/svmain/user_list.html      |    5 +++--
 9 files changed, 75 insertions(+), 13 deletions(-)
 create mode 100644 templates/my/i18n.html


hooks/post-receive
-- 
Savane-cleanup framework



reply via email to

[Prev in Thread] Current Thread [Next in Thread]