--- a/src/p4l/settings.py Mon Sep 02 16:40:28 2013 +0200
+++ b/src/p4l/settings.py Mon Sep 02 17:49:41 2013 +0200
@@ -103,6 +103,7 @@
'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',
)
Binary file src/p4l/static/p4l/css/img/flags.png has changed
--- a/src/p4l/static/p4l/css/p4l.css Mon Sep 02 16:40:28 2013 +0200
+++ b/src/p4l/static/p4l/css/p4l.css Mon Sep 02 17:49:41 2013 +0200
@@ -21,4 +21,14 @@
}
.two_buttons{
min-width: 100px;
-}
\ No newline at end of file
+}
+
+/* Flags */
+.flag {
+ width: 16px;
+ height: 11px;
+ background:url(./img/flags.png) no-repeat
+}
+.flag.flag-es {background-position: -16px 0}
+.flag.flag-fr {background-position: 0 -11px}
+.flag.flag-gb {background-position: -16px -11px}
Binary file src/p4l/static/p4l/img/blank.gif has changed
--- a/src/p4l/templates/p4l/p4l_record_view.html Mon Sep 02 16:40:28 2013 +0200
+++ b/src/p4l/templates/p4l/p4l_record_view.html Mon Sep 02 17:49:41 2013 +0200
@@ -243,4 +243,10 @@
isDocumentPart = models.BooleanField() #iiep:isDocumentPart
-->
</table>
+<div class="row">
+ <div class="col-md-12 text-right">
+ <a href="?uri={{ record.uri }}&lang=fr" alt="FR" /><img src="{% static 'p4l/img/blank.gif' %}" class="flag flag-fr" alt="FR" /></a>
+ <a href="?uri={{ record.uri }}&lang=en" alt="EN" /><img src="{% static 'p4l/img/blank.gif' %}" class="flag flag-gb" alt="EN" /></a>
+ <a href="?uri={{ record.uri }}&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/views.py Mon Sep 02 16:40:28 2013 +0200
+++ b/src/p4l/views.py Mon Sep 02 17:49:41 2013 +0200
@@ -60,27 +60,33 @@
def get_context_data(self, **kwargs):
context = DetailView.get_context_data(self, **kwargs)
+ # We get the language, "fr" by default
+ lang = "fr"
+ if "lang" in self.request.GET:
+ lang = self.request.GET["lang"]
+ elif hasattr(self.request, "LANGUAGE_CODE") and self.request.LANGUAGE_CODE in ["fr","en","es"]:
+ lang = self.request.LANGUAGE_CODE
# self.object is the record entry
# We get the subjects'labels with the Thesaurus repository
uri_list = [s.uri for s in self.object.subjects.all()]
- uris_labels = get_labels_for_uris(uri_list, "http://skos.um.es/unescothes/CS000", "fr", False)
+ uris_labels = get_labels_for_uris(uri_list, "http://skos.um.es/unescothes/CS000", lang, False)
context['subjects_labels'] = uris_labels
# We get the themes'labels with the Themes repository
uri_list = [s.uri for s in self.object.themes.all()]
- uris_labels = get_labels_for_uris(uri_list, "http://www.iiep.unesco.org/plan4learning/scheme/Themes", "fr", False)
+ uris_labels = get_labels_for_uris(uri_list, "http://www.iiep.unesco.org/plan4learning/scheme/Themes", lang, False)
context['themes_labels'] = uris_labels
# We get the countries'labels with the Thesaurus repository
uri_list = [s.uri for s in self.object.countries.all()]
- uris_labels = get_labels_for_uris(uri_list, "http://skos.um.es/unescothes/CS000/Countries", "fr", False)
+ uris_labels = get_labels_for_uris(uri_list, "http://skos.um.es/unescothes/CS000/Countries", lang, False)
context['countries_labels'] = uris_labels
# We get the languages'labels with the Languages repository
if self.object.language:
uri_list = [self.object.language.uri]
- uris_labels = get_labels_for_uris(uri_list, "http://www.iiep.unesco.org/plan4learning/scheme/Languages", "fr", False)
+ uris_labels = get_labels_for_uris(uri_list, "http://www.iiep.unesco.org/plan4learning/scheme/Languages", lang, False)
context['language_label'] = uris_labels[self.object.language.uri]
# We get the other languages'labels with the Languages repository
uri_list = [s.uri for s in self.object.otherLanguages.all()]
- uris_labels = get_labels_for_uris(uri_list, "http://www.iiep.unesco.org/plan4learning/scheme/Languages", "fr", False)
+ uris_labels = get_labels_for_uris(uri_list, "http://www.iiep.unesco.org/plan4learning/scheme/Languages", lang, False)
context['otherLanguages_labels'] = uris_labels
# We get the project'labels with the Projects repository
uri_list = [s.uri for s in self.object.projectNames.all()]
@@ -97,7 +103,7 @@
# We get the recordType'labels with the DocumentType repository
if self.object.recordType:
uri_list = [self.object.recordType]
- uris_labels = get_labels_for_uris(uri_list, "http://www.iiep.unesco.org/plan4learning/scheme/DocumentType", "fr", False)
+ uris_labels = get_labels_for_uris(uri_list, "http://www.iiep.unesco.org/plan4learning/scheme/DocumentType", lang, False)
context['recordType_label'] = uris_labels[self.object.recordType]
return context