fisrt version for translate
authorymh <ymh.work@gmail.com>
Thu, 05 Sep 2013 13:25:32 +0200
changeset 39 33a413910b75
parent 38 c4e5bb735ec1
child 40 cc7149ca6863
fisrt version for translate
src/p4l/locale/en/LC_MESSAGES/django.mo
src/p4l/locale/en/LC_MESSAGES/django.po
src/p4l/locale/es/LC_MESSAGES/django.mo
src/p4l/locale/es/LC_MESSAGES/django.po
src/p4l/locale/fr/LC_MESSAGES/django.mo
src/p4l/locale/fr/LC_MESSAGES/django.po
src/p4l/models/user.py
src/p4l/settings.py
src/p4l/static/p4l/css/p4l.css
src/p4l/templates/p4l/p4l_base.html
src/p4l/templates/p4l/p4l_record_view.html
src/p4l/templates/p4l/record_update_form.html
src/p4l/urls.py
Binary file src/p4l/locale/en/LC_MESSAGES/django.mo has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/p4l/locale/en/LC_MESSAGES/django.po	Thu Sep 05 13:25:32 2013 +0200
@@ -0,0 +1,277 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2013-09-04 11:36-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: admin.py:10 forms.py:36 templates/p4l/p4l_record_view.html:51
+msgid "language"
+msgstr "language"
+
+#: settings.py:41
+msgid "French"
+msgstr "French"
+
+#: settings.py:42
+msgid "English"
+msgstr "English"
+
+#: settings.py:43
+msgid "Spanish"
+msgstr "Spanish"
+
+#: templates/p4l/p4l_base.html:35
+msgid "logout"
+msgstr "logout"
+
+#: templates/p4l/p4l_base.html:37 templates/registration/login.html:4
+#: templates/registration/login.html:27
+msgid "login"
+msgstr "login"
+
+#: templates/p4l/p4l_home.html:6 templates/p4l/p4l_home.html.py:10
+msgid "Record List"
+msgstr "Record list"
+
+#: templates/p4l/p4l_home.html:6 templates/p4l/p4l_home.html.py:29
+#: templates/p4l/p4l_home.html:66
+msgid "Page"
+msgstr "Page"
+
+#: templates/p4l/p4l_home.html:14
+msgid "Title"
+msgstr "Title"
+
+#: templates/p4l/p4l_home.html:26 templates/p4l/p4l_home.html.py:63
+msgid "Previous"
+msgstr "Previous"
+
+#: templates/p4l/p4l_home.html:29 templates/p4l/p4l_home.html.py:66
+msgid "on"
+msgstr "on"
+
+#: templates/p4l/p4l_home.html:32 templates/p4l/p4l_home.html.py:69
+msgid "Next"
+msgstr "Next"
+
+#: templates/p4l/p4l_home.html:39 templates/p4l/p4l_record_view.html:59
+msgid "titles"
+msgstr "titles"
+
+#: templates/p4l/p4l_home.html:39
+msgid "actions"
+msgstr "actions"
+
+#: templates/p4l/p4l_home.html:55
+msgid "No record"
+msgstr "No record"
+
+#: templates/p4l/p4l_record_view.html:6
+#: templates/p4l/record_update_form.html:5
+msgid "Record"
+msgstr "Record"
+
+#: templates/p4l/p4l_record_view.html:6
+#: templates/p4l/record_update_form.html:5
+msgid "View"
+msgstr "View"
+
+#: templates/p4l/p4l_record_view.html:11
+msgid "property"
+msgstr "property"
+
+#: templates/p4l/p4l_record_view.html:11
+msgid "value"
+msgstr "value"
+
+#: templates/p4l/p4l_record_view.html:19
+msgid "subjects"
+msgstr "subjects"
+
+#: templates/p4l/p4l_record_view.html:23
+msgid "themes"
+msgstr "themes"
+
+#: templates/p4l/p4l_record_view.html:27
+msgid "countries"
+msgstr "countries"
+
+#: templates/p4l/p4l_record_view.html:31
+msgid "identifier"
+msgstr "identifier"
+
+#: templates/p4l/p4l_record_view.html:35
+msgid "notes"
+msgstr "notes"
+
+#: templates/p4l/p4l_record_view.html:39
+msgid "issns"
+msgstr "issns"
+
+#: templates/p4l/p4l_record_view.html:43
+msgid "isbns"
+msgstr "isbns"
+
+#: templates/p4l/p4l_record_view.html:47
+msgid "document code"
+msgstr "document code"
+
+#: templates/p4l/p4l_record_view.html:55
+msgid "other languages"
+msgstr "other languages"
+
+#: templates/p4l/p4l_record_view.html:63
+msgid "abstracts"
+msgstr "abstracts"
+
+#: templates/p4l/p4l_record_view.html:67
+msgid "added titles"
+msgstr "addes titles"
+
+#: templates/p4l/p4l_record_view.html:71
+msgid "titles main document"
+msgstr "titles main document"
+
+#: templates/p4l/p4l_record_view.html:75
+msgid "edition statement"
+msgstr "edition statement"
+
+#: templates/p4l/p4l_record_view.html:79
+msgid "imprints"
+msgstr "imprints"
+
+#: templates/p4l/p4l_record_view.html:85
+msgid "City"
+msgstr "City"
+
+#: templates/p4l/p4l_record_view.html:86
+msgid "Publisher"
+msgstr "Publisher"
+
+#: templates/p4l/p4l_record_view.html:87
+#: templates/p4l/p4l_record_view.html:133
+#: templates/p4l/p4l_record_view.html:178
+msgid "Date"
+msgstr "Date"
+
+#: templates/p4l/p4l_record_view.html:88
+#: templates/p4l/p4l_record_view.html:108
+msgid "Language"
+msgstr "Language"
+
+#: templates/p4l/p4l_record_view.html:96
+msgid "collations"
+msgstr "collations"
+
+#: templates/p4l/p4l_record_view.html:100
+msgid "volume issues"
+msgstr "volume issues"
+
+#: templates/p4l/p4l_record_view.html:106
+#: templates/p4l/p4l_record_view.html:149
+msgid "Volume"
+msgstr "Volume"
+
+#: templates/p4l/p4l_record_view.html:107
+#: templates/p4l/p4l_record_view.html:131
+#: templates/p4l/p4l_record_view.html:176
+msgid "Number"
+msgstr "Number"
+
+#: templates/p4l/p4l_record_view.html:116
+msgid "project names"
+msgstr "project names"
+
+#: templates/p4l/p4l_record_view.html:120
+msgid "periodicals"
+msgstr "periodicals"
+
+#: templates/p4l/p4l_record_view.html:124
+msgid "meetings"
+msgstr "meetings"
+
+#: templates/p4l/p4l_record_view.html:132
+#: templates/p4l/p4l_record_view.html:177
+msgid "Place"
+msgstr "Place"
+
+#: templates/p4l/p4l_record_view.html:134
+#: templates/p4l/p4l_record_view.html:179
+msgid "Year"
+msgstr "Year"
+
+#: templates/p4l/p4l_record_view.html:142
+msgid "series"
+msgstr "series"
+
+#: templates/p4l/p4l_record_view.html:157
+msgid "authors"
+msgstr "authors"
+
+#: templates/p4l/p4l_record_view.html:161
+msgid "subject persons"
+msgstr "subject persons"
+
+#: templates/p4l/p4l_record_view.html:165
+msgid "subject corporate bodies"
+msgstr "subject corporate bodies"
+
+#: templates/p4l/p4l_record_view.html:169
+msgid "subject meetings"
+msgstr "subject meetings"
+
+#: templates/p4l/p4l_record_view.html:187
+msgid "corporate authors"
+msgstr "corporate authors"
+
+#: templates/p4l/p4l_record_view.html:191
+msgid "Urls"
+msgstr "Urls"
+
+#: templates/p4l/p4l_record_view.html:197
+msgid "Address"
+msgstr "Address"
+
+#: templates/p4l/p4l_record_view.html:198
+msgid "Display"
+msgstr "Display"
+
+#: templates/p4l/p4l_record_view.html:199
+msgid "Access level"
+msgstr "Access level"
+
+#: templates/p4l/p4l_record_view.html:207
+msgid "record type"
+msgstr "record type"
+
+#: templates/p4l/p4l_record_view.html:211
+msgid "is document part"
+msgstr "is document part"
+
+#: templates/p4l/p4l_record_view.html:215
+msgid "is multilingual"
+msgstr "is multilingual"
+
+#: templates/registration/login.html:8
+msgid "Sorry, that's not a valid username or password."
+msgstr "Sorry, that's not a valid username or password."
+
+#: templates/registration/login.html:14 templates/registration/login.html:16
+msgid "Username"
+msgstr "Username"
+
+#: templates/registration/login.html:20 templates/registration/login.html:22
+msgid "Password"
+msgstr "Password"
Binary file src/p4l/locale/es/LC_MESSAGES/django.mo has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/p4l/locale/es/LC_MESSAGES/django.po	Thu Sep 05 13:25:32 2013 +0200
@@ -0,0 +1,278 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2013-09-04 11:36-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: admin.py:10 forms.py:36 templates/p4l/p4l_record_view.html:51
+msgid "language"
+msgstr "language"
+
+#: settings.py:41
+msgid "French"
+msgstr "French"
+
+#: settings.py:42
+msgid "English"
+msgstr "English"
+
+#: settings.py:43
+msgid "Spanish"
+msgstr "Spanish"
+
+#: templates/p4l/p4l_base.html:35
+msgid "logout"
+msgstr "logout"
+
+#: templates/p4l/p4l_base.html:37 templates/registration/login.html:4
+#: templates/registration/login.html:27
+msgid "login"
+msgstr "login"
+
+#: templates/p4l/p4l_home.html:6 templates/p4l/p4l_home.html.py:10
+msgid "Record List"
+msgstr "Record list"
+
+#: templates/p4l/p4l_home.html:6 templates/p4l/p4l_home.html.py:29
+#: templates/p4l/p4l_home.html:66
+msgid "Page"
+msgstr "Page"
+
+#: templates/p4l/p4l_home.html:14
+msgid "Title"
+msgstr "Title"
+
+#: templates/p4l/p4l_home.html:26 templates/p4l/p4l_home.html.py:63
+msgid "Previous"
+msgstr "Previous"
+
+#: templates/p4l/p4l_home.html:29 templates/p4l/p4l_home.html.py:66
+msgid "on"
+msgstr "on"
+
+#: templates/p4l/p4l_home.html:32 templates/p4l/p4l_home.html.py:69
+msgid "Next"
+msgstr "Next"
+
+#: templates/p4l/p4l_home.html:39 templates/p4l/p4l_record_view.html:59
+msgid "titles"
+msgstr "titles"
+
+#: templates/p4l/p4l_home.html:39
+msgid "actions"
+msgstr "actions"
+
+#: templates/p4l/p4l_home.html:55
+msgid "No record"
+msgstr "No record"
+
+#: templates/p4l/p4l_record_view.html:6
+#: templates/p4l/record_update_form.html:5
+msgid "Record"
+msgstr "Record"
+
+#: templates/p4l/p4l_record_view.html:6
+#: templates/p4l/record_update_form.html:5
+msgid "View"
+msgstr "View"
+
+#: templates/p4l/p4l_record_view.html:11
+msgid "property"
+msgstr "property"
+
+#: templates/p4l/p4l_record_view.html:11
+msgid "value"
+msgstr "value"
+
+#: templates/p4l/p4l_record_view.html:19
+msgid "subjects"
+msgstr "subjects"
+
+#: templates/p4l/p4l_record_view.html:23
+msgid "themes"
+msgstr "themes"
+
+#: templates/p4l/p4l_record_view.html:27
+msgid "countries"
+msgstr "countries"
+
+#: templates/p4l/p4l_record_view.html:31
+msgid "identifier"
+msgstr "identifier"
+
+#: templates/p4l/p4l_record_view.html:35
+msgid "notes"
+msgstr "notes"
+
+#: templates/p4l/p4l_record_view.html:39
+msgid "issns"
+msgstr "issns"
+
+#: templates/p4l/p4l_record_view.html:43
+msgid "isbns"
+msgstr "isbns"
+
+#: templates/p4l/p4l_record_view.html:47
+msgid "document code"
+msgstr "document code"
+
+#: templates/p4l/p4l_record_view.html:55
+msgid "other languages"
+msgstr "other languages"
+
+#: templates/p4l/p4l_record_view.html:63
+msgid "abstracts"
+msgstr "abstracts"
+
+#: templates/p4l/p4l_record_view.html:67
+msgid "added titles"
+msgstr "addes titles"
+
+#: templates/p4l/p4l_record_view.html:71
+msgid "titles main document"
+msgstr "titles main document"
+
+#: templates/p4l/p4l_record_view.html:75
+msgid "edition statement"
+msgstr "edition statement"
+
+#: templates/p4l/p4l_record_view.html:79
+msgid "imprints"
+msgstr "imprints"
+
+#: templates/p4l/p4l_record_view.html:85
+msgid "City"
+msgstr "City"
+
+#: templates/p4l/p4l_record_view.html:86
+msgid "Publisher"
+msgstr "Publisher"
+
+#: templates/p4l/p4l_record_view.html:87
+#: templates/p4l/p4l_record_view.html:133
+#: templates/p4l/p4l_record_view.html:178
+msgid "Date"
+msgstr "Date"
+
+#: templates/p4l/p4l_record_view.html:88
+#: templates/p4l/p4l_record_view.html:108
+msgid "Language"
+msgstr "Language"
+
+#: templates/p4l/p4l_record_view.html:96
+msgid "collations"
+msgstr "collations"
+
+#: templates/p4l/p4l_record_view.html:100
+msgid "volume issues"
+msgstr "volume issues"
+
+#: templates/p4l/p4l_record_view.html:106
+#: templates/p4l/p4l_record_view.html:149
+msgid "Volume"
+msgstr "Volume"
+
+#: templates/p4l/p4l_record_view.html:107
+#: templates/p4l/p4l_record_view.html:131
+#: templates/p4l/p4l_record_view.html:176
+msgid "Number"
+msgstr "Number"
+
+#: templates/p4l/p4l_record_view.html:116
+msgid "project names"
+msgstr "project names"
+
+#: templates/p4l/p4l_record_view.html:120
+msgid "periodicals"
+msgstr "periodicals"
+
+#: templates/p4l/p4l_record_view.html:124
+msgid "meetings"
+msgstr "meetings"
+
+#: templates/p4l/p4l_record_view.html:132
+#: templates/p4l/p4l_record_view.html:177
+msgid "Place"
+msgstr "Place"
+
+#: templates/p4l/p4l_record_view.html:134
+#: templates/p4l/p4l_record_view.html:179
+msgid "Year"
+msgstr "Year"
+
+#: templates/p4l/p4l_record_view.html:142
+msgid "series"
+msgstr "series"
+
+#: templates/p4l/p4l_record_view.html:157
+msgid "authors"
+msgstr "authors"
+
+#: templates/p4l/p4l_record_view.html:161
+msgid "subject persons"
+msgstr "subject persons"
+
+#: templates/p4l/p4l_record_view.html:165
+msgid "subject corporate bodies"
+msgstr "subject corporate bodies"
+
+#: templates/p4l/p4l_record_view.html:169
+msgid "subject meetings"
+msgstr "subject meetings"
+
+#: templates/p4l/p4l_record_view.html:187
+msgid "corporate authors"
+msgstr "corporate authors"
+
+#: templates/p4l/p4l_record_view.html:191
+msgid "Urls"
+msgstr "Urls"
+
+#: templates/p4l/p4l_record_view.html:197
+msgid "Address"
+msgstr "Address"
+
+#: templates/p4l/p4l_record_view.html:198
+msgid "Display"
+msgstr "Display"
+
+#: templates/p4l/p4l_record_view.html:199
+msgid "Access level"
+msgstr "Access level"
+
+#: templates/p4l/p4l_record_view.html:207
+msgid "record type"
+msgstr "record type"
+
+#: templates/p4l/p4l_record_view.html:211
+msgid "is document part"
+msgstr "is document part"
+
+#: templates/p4l/p4l_record_view.html:215
+msgid "is multilingual"
+msgstr "is multilingual"
+
+#: templates/registration/login.html:8
+msgid "Sorry, that's not a valid username or password."
+msgstr "Sorry, that's not a valid username or password."
+
+#: templates/registration/login.html:14 templates/registration/login.html:16
+msgid "Username"
+msgstr "Username"
+
+#: templates/registration/login.html:20 templates/registration/login.html:22
+msgid "Password"
+msgstr "Password"
\ No newline at end of file
Binary file src/p4l/locale/fr/LC_MESSAGES/django.mo has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/p4l/locale/fr/LC_MESSAGES/django.po	Thu Sep 05 13:25:32 2013 +0200
@@ -0,0 +1,278 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2013-09-04 11:36-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#: admin.py:10 forms.py:36 templates/p4l/p4l_record_view.html:51
+msgid "language"
+msgstr "langue"
+
+#: settings.py:41
+msgid "French"
+msgstr "Français"
+
+#: settings.py:42
+msgid "English"
+msgstr "Anglais"
+
+#: settings.py:43
+msgid "Spanish"
+msgstr "Espagnol"
+
+#: templates/p4l/p4l_base.html:35
+msgid "logout"
+msgstr "deconnection"
+
+#: templates/p4l/p4l_base.html:37 templates/registration/login.html:4
+#: templates/registration/login.html:27
+msgid "login"
+msgstr "connection"
+
+#: templates/p4l/p4l_home.html:6 templates/p4l/p4l_home.html.py:10
+msgid "Record List"
+msgstr "Liste notice"
+
+#: templates/p4l/p4l_home.html:6 templates/p4l/p4l_home.html.py:29
+#: templates/p4l/p4l_home.html:66
+msgid "Page"
+msgstr "Page"
+
+#: templates/p4l/p4l_home.html:14
+msgid "Title"
+msgstr "Titre"
+
+#: templates/p4l/p4l_home.html:26 templates/p4l/p4l_home.html.py:63
+msgid "Previous"
+msgstr "Préc."
+
+#: templates/p4l/p4l_home.html:29 templates/p4l/p4l_home.html.py:66
+msgid "on"
+msgstr "sur"
+
+#: templates/p4l/p4l_home.html:32 templates/p4l/p4l_home.html.py:69
+msgid "Next"
+msgstr "Suiv."
+
+#: templates/p4l/p4l_home.html:39 templates/p4l/p4l_record_view.html:59
+msgid "titles"
+msgstr "titres"
+
+#: templates/p4l/p4l_home.html:39
+msgid "actions"
+msgstr "actions"
+
+#: templates/p4l/p4l_home.html:55
+msgid "No record"
+msgstr "Pas de notice"
+
+#: templates/p4l/p4l_record_view.html:6
+#: templates/p4l/record_update_form.html:5
+msgid "Record"
+msgstr "Notice"
+
+#: templates/p4l/p4l_record_view.html:6
+#: templates/p4l/record_update_form.html:5
+msgid "View"
+msgstr "Vue"
+
+#: templates/p4l/p4l_record_view.html:11
+msgid "property"
+msgstr "propriété"
+
+#: templates/p4l/p4l_record_view.html:11
+msgid "value"
+msgstr "valeur"
+
+#: templates/p4l/p4l_record_view.html:19
+msgid "subjects"
+msgstr "sujets"
+
+#: templates/p4l/p4l_record_view.html:23
+msgid "themes"
+msgstr "thèmes"
+
+#: templates/p4l/p4l_record_view.html:27
+msgid "countries"
+msgstr "pays"
+
+#: templates/p4l/p4l_record_view.html:31
+msgid "identifier"
+msgstr "identifiant"
+
+#: templates/p4l/p4l_record_view.html:35
+msgid "notes"
+msgstr "notes"
+
+#: templates/p4l/p4l_record_view.html:39
+msgid "issns"
+msgstr "issns"
+
+#: templates/p4l/p4l_record_view.html:43
+msgid "isbns"
+msgstr "isbns"
+
+#: templates/p4l/p4l_record_view.html:47
+msgid "document code"
+msgstr "code document"
+
+#: templates/p4l/p4l_record_view.html:55
+msgid "other languages"
+msgstr "autres langues"
+
+#: templates/p4l/p4l_record_view.html:63
+msgid "abstracts"
+msgstr "résumés"
+
+#: templates/p4l/p4l_record_view.html:67
+msgid "added titles"
+msgstr "titres ajoutés"
+
+#: templates/p4l/p4l_record_view.html:71
+msgid "titles main document"
+msgstr "titre doc. principal"
+
+#: templates/p4l/p4l_record_view.html:75
+msgid "edition statement"
+msgstr "déclatation pub."
+
+#: templates/p4l/p4l_record_view.html:79
+msgid "imprints"
+msgstr "impressions"
+
+#: templates/p4l/p4l_record_view.html:85
+msgid "City"
+msgstr "Ville"
+
+#: templates/p4l/p4l_record_view.html:86
+msgid "Publisher"
+msgstr "Éditeur"
+
+#: templates/p4l/p4l_record_view.html:87
+#: templates/p4l/p4l_record_view.html:133
+#: templates/p4l/p4l_record_view.html:178
+msgid "Date"
+msgstr "Date"
+
+#: templates/p4l/p4l_record_view.html:88
+#: templates/p4l/p4l_record_view.html:108
+msgid "Language"
+msgstr "Langue"
+
+#: templates/p4l/p4l_record_view.html:96
+msgid "collations"
+msgstr "paginations"
+
+#: templates/p4l/p4l_record_view.html:100
+msgid "volume issues"
+msgstr "volume de parution"
+
+#: templates/p4l/p4l_record_view.html:106
+#: templates/p4l/p4l_record_view.html:149
+msgid "Volume"
+msgstr "Volume"
+
+#: templates/p4l/p4l_record_view.html:107
+#: templates/p4l/p4l_record_view.html:131
+#: templates/p4l/p4l_record_view.html:176
+msgid "Number"
+msgstr "Nombre"
+
+#: templates/p4l/p4l_record_view.html:116
+msgid "project names"
+msgstr "noms de projet"
+
+#: templates/p4l/p4l_record_view.html:120
+msgid "periodicals"
+msgstr "périodiques"
+
+#: templates/p4l/p4l_record_view.html:124
+msgid "meetings"
+msgstr "réunion"
+
+#: templates/p4l/p4l_record_view.html:132
+#: templates/p4l/p4l_record_view.html:177
+msgid "Place"
+msgstr "Lieu"
+
+#: templates/p4l/p4l_record_view.html:134
+#: templates/p4l/p4l_record_view.html:179
+msgid "Year"
+msgstr "Année"
+
+#: templates/p4l/p4l_record_view.html:142
+msgid "series"
+msgstr "séries"
+
+#: templates/p4l/p4l_record_view.html:157
+msgid "authors"
+msgstr "auteurs"
+
+#: templates/p4l/p4l_record_view.html:161
+msgid "subject persons"
+msgstr "personnes sujets"
+
+#: templates/p4l/p4l_record_view.html:165
+msgid "subject corporate bodies"
+msgstr "personne morale sujets"
+
+#: templates/p4l/p4l_record_view.html:169
+msgid "subject meetings"
+msgstr "réunion sujets"
+
+#: templates/p4l/p4l_record_view.html:187
+msgid "corporate authors"
+msgstr "entités auteurs"
+
+#: templates/p4l/p4l_record_view.html:191
+msgid "Urls"
+msgstr "Urls"
+
+#: templates/p4l/p4l_record_view.html:197
+msgid "Address"
+msgstr "Adresse"
+
+#: templates/p4l/p4l_record_view.html:198
+msgid "Display"
+msgstr "Affichage"
+
+#: templates/p4l/p4l_record_view.html:199
+msgid "Access level"
+msgstr "Niveau d'accès"
+
+#: templates/p4l/p4l_record_view.html:207
+msgid "record type"
+msgstr "type de notice"
+
+#: templates/p4l/p4l_record_view.html:211
+msgid "is document part"
+msgstr "document partiel"
+
+#: templates/p4l/p4l_record_view.html:215
+msgid "is multilingual"
+msgstr "multilingue"
+
+#: templates/registration/login.html:8
+msgid "Sorry, that's not a valid username or password."
+msgstr "Désolé, utilisateur ou mot de passe invalide"
+
+#: templates/registration/login.html:14 templates/registration/login.html:16
+msgid "Username"
+msgstr "Utilisateur"
+
+#: templates/registration/login.html:20 templates/registration/login.html:22
+msgid "Password"
+msgstr "Mot de passe"
--- a/src/p4l/models/user.py	Thu Sep 05 13:09:57 2013 +0200
+++ b/src/p4l/models/user.py	Thu Sep 05 13:25:32 2013 +0200
@@ -6,8 +6,9 @@
 '''
 from django.conf import settings
 from django.contrib.auth.models import AbstractUser
+from django.contrib.auth.signals import user_logged_in
 from django.db import models
-from p4l.models.common import P4lModel
+from django.dispatch.dispatcher import receiver
 
 class User(AbstractUser):
     language = models.CharField(max_length=2, default=settings.LANGUAGE_CODE[:2])
@@ -15,3 +16,9 @@
     class Meta:
         app_label = 'p4l'
 
+@receiver(user_logged_in)
+def lang(sender, **kwargs):
+    user = kwargs.get('user', None)
+    request = kwargs.get('request', None)    
+    if user and request:
+        request.session['django_language'] = user.language or settings.LANGUAGE_CODE[:2]
--- a/src/p4l/settings.py	Thu Sep 05 13:09:57 2013 +0200
+++ b/src/p4l/settings.py	Thu Sep 05 13:25:32 2013 +0200
@@ -1,4 +1,5 @@
 # Django settings for p4l project.
+from django.conf import global_settings
 
 DEBUG = True
 TEMPLATE_DEBUG = DEBUG
@@ -40,6 +41,7 @@
 LANGUAGES = ( 
     ('fr', ugettext('French')),
     ('en', ugettext('English')),
+    ('es', ugettext('Spanish')),
 )
 
 
@@ -100,10 +102,10 @@
 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',
-    'django.middleware.locale.LocaleMiddleware',
     # Uncomment the next line for simple clickjacking protection:
     # 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 )
@@ -136,6 +138,10 @@
     'p4l'
 )
 
+TEMPLATE_CONTEXT_PROCESSORS = global_settings.TEMPLATE_CONTEXT_PROCESSORS + (
+    'django.core.context_processors.i18n',
+)
+
 # A sample logging configuration. The only tangible logging
 # performed by this configuration is to send an email to
 # the site admins on every HTTP 500 error when DEBUG=False.
--- a/src/p4l/static/p4l/css/p4l.css	Thu Sep 05 13:09:57 2013 +0200
+++ b/src/p4l/static/p4l/css/p4l.css	Thu Sep 05 13:25:32 2013 +0200
@@ -23,12 +23,24 @@
 	min-width: 100px;
 }
 
+footer {
+    padding-bottom: 20px;    
+}
+
 /* Flags */
+
 .flag {
     width: 16px;
     height: 11px;
-    background:url(./img/flags.png) no-repeat
+    padding: 0;
+    border: none;
+    background:url(./img/flags.png) no-repeat;
+    /* hack to hide the button text */
+    text-indent: -999em; /* Hide the text, works in most modern browsers */
+    font-size: 0px; /* works well in IE7. still a black line (basically the text) in IE6. */
+    /*display: block;*/ /* Negative text-indent works in IE(6? worked fine in 7) only if this is added. */
+    line-height: 0px; /* Another fix for IE6. */
 }
 .flag.flag-es {background-position: -16px 0}
 .flag.flag-fr {background-position: 0 -11px}
-.flag.flag-gb {background-position: -16px -11px}
+.flag.flag-en {background-position: -16px -11px}
--- a/src/p4l/templates/p4l/p4l_base.html	Thu Sep 05 13:09:57 2013 +0200
+++ b/src/p4l/templates/p4l/p4l_base.html	Thu Sep 05 13:25:32 2013 +0200
@@ -1,10 +1,10 @@
 {% load static %}
 {% load i18n %}
 <!doctype html>
-<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]-->
-<!--[if IE 7]>    <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]-->
-<!--[if IE 8]>    <html class="no-js lt-ie9" lang="en"> <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
+<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="{{LANGUAGE_CODE}}"> <![endif]-->
+<!--[if IE 7]>    <html class="no-js lt-ie9 lt-ie8" lang="{{LANGUAGE_CODE}}"> <![endif]-->
+<!--[if IE 8]>    <html class="no-js lt-ie9" lang="{{LANGUAGE_CODE}}"> <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="{{LANGUAGE_CODE}}"> <!--<![endif]-->
 <head>
   {% block head %}
   <meta charset="utf-8">
@@ -45,6 +45,19 @@
     {% block content %}
     {% endblock %}
 	</div>
+    <footer class="container">
+      {% block footer %}
+        <div class="col-md-12 text-right" id='langselect'>
+            <form action="{% url 'django.views.i18n.set_language' %}" method="post" id="lang_form">
+            {% csrf_token %}
+            {% get_language_info_list for LANGUAGES as languages %}
+            {% for language in languages %}
+                <input type="submit" name="language" class="flag flag-{{ language.code }}{% if language.code == LANGUAGE_CODE %} selected{% endif %}" value="{{ language.code }}" title="{{ language.name_local }}" />
+            {% endfor %}
+            </form>
+        </div>
+      {% endblock %}
+    </footer>
     {% block js_common %}
     <!--script type="text/javascript" src="{% static 'p4l/js/bootstrap.min.js' %}"></script-->
     {% endblock %}
--- a/src/p4l/templates/p4l/p4l_record_view.html	Thu Sep 05 13:09:57 2013 +0200
+++ b/src/p4l/templates/p4l/p4l_record_view.html	Thu Sep 05 13:25:32 2013 +0200
@@ -194,7 +194,7 @@
           {% for i in record.urls.all %}
           <li>
             <ul class="list-unstyled">
-              <li>{% trans 'Address' %} : {{ i.address|default:'' }}</li>
+              <li>{% trans 'Address' %} : {% if i.address %}<a href="{{ i.address }}" target="_blank">{{ i.address }}</a>{% endif %}</li>
               <li>{% trans 'Display' %} : {{ i.display|default:'' }}</li>
               <li>{% trans 'Access level' %} : {{ i.accessLevel|default:'' }}</li>
             </ul>
@@ -217,10 +217,4 @@
     </tr>
   </tbody>
 </table>
-<div class="row">
-    <div class="col-md-12 text-right">
-      <a href="?lang=fr" alt="FR" /><img src="{% static 'p4l/img/blank.gif' %}" class="flag flag-fr" alt="FR" /></a>&nbsp;
-      <a href="?lang=en" alt="EN" /><img src="{% static 'p4l/img/blank.gif' %}" class="flag flag-gb" alt="EN" /></a>&nbsp;
-      <a href="?lang=es" alt="ES" /><img src="{% static 'p4l/img/blank.gif' %}" class="flag flag-es" alt="ES" /></a>
-</div>
 {% endblock %}
\ No newline at end of file
--- a/src/p4l/templates/p4l/record_update_form.html	Thu Sep 05 13:09:57 2013 +0200
+++ b/src/p4l/templates/p4l/record_update_form.html	Thu Sep 05 13:25:32 2013 +0200
@@ -11,6 +11,7 @@
 {% endblock %}
 
 {% block js_page %}
+<script type="text/javascript" src="{% url 'django.views.i18n.javascript_catalog' %}"></script>
 <script type="text/javascript" src="{% static 'p4l/lib/angular/angular.min.js' %}"></script>
 <script type="text/javascript" src="{% static 'p4l/lib/angular/angular-resource.min.js' %}"></script>
 <script type="text/javascript" src="{% static 'p4l/lib/jquery-1.9.1.js' %}"></script>
@@ -23,12 +24,12 @@
     angular.module("recordApp")
         .value('context', {
             record_id: "{{record.identifier}}",
-            uri_labels: {{uri_labels|safe}},
+            uri_labels: angular.fromJson('{{uri_labels | safe | addslashes}}'),
             urls: {
                 record_api: "{% url 'record-detail' identifier=':recordId' %}".replace("\%3A",":")
             }
         });
-    var sqd = {{ subjects_query_dict|safe }};
+    var sqd = angular.fromJson('{{ subjects_query_dict | safe | addslashes}}');
     for (var k in sqd){
         if (sqd.hasOwnProperty(k)) {
             $("#id_addSubjectText").attr(k,sqd[k]);
@@ -76,15 +77,12 @@
 	      </form>
       </td>
     </tr>
+    <tr>
+        <td>notes</td>
+        <td><textarea id="record-notes-input" ng-model="record.notes"></textarea></td>
+    </tr>
   </tbody>
 </table>
 </div>
 {% endverbatim %}
-<div class="row">
-    <div class="col-md-12 text-right">
-      <a href="?lang=fr" alt="FR"><img src="{% static 'p4l/img/blank.gif' %}" class="flag flag-fr" alt="FR" /></a>&nbsp;
-      <a href="?lang=en" alt="EN"><img src="{% static 'p4l/img/blank.gif' %}" class="flag flag-gb" alt="EN" /></a>&nbsp;
-      <a href="?lang=es" alt="ES"><img src="{% static 'p4l/img/blank.gif' %}" class="flag flag-es" alt="ES" /></a>
-    </div>
-</div>
 {% endblock %}
\ No newline at end of file
--- a/src/p4l/urls.py	Thu Sep 05 13:09:57 2013 +0200
+++ b/src/p4l/urls.py	Thu Sep 05 13:25:32 2013 +0200
@@ -3,6 +3,11 @@
 from django.contrib.auth import urls as auth_urls
 from p4l.views import RecordListView, RecordDetailView, RecordEditView
 
+js_info_dict = {
+    'packages': ('p4l',),
+    'domain': 'django',
+}
+
 admin.autodiscover()
 
 urlpatterns = patterns('',
@@ -12,9 +17,8 @@
     url(r'^record/edit/(?P<slug>\w+)$', RecordEditView.as_view(), name='p4l_record_edit'),
     url(r'^api/', include('p4l.api.urls')),
 
-    # Uncomment the admin/doc line below to enable admin documentation:
-    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
-
+    url(r'^i18n/', include('django.conf.urls.i18n')),
+    url(r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict),
     url(r'^admin/', include(admin.site.urls)),
     
 )
\ No newline at end of file