Browse Source

Integrated complete switch_language functionality for admin.

master 0.2.1
Erik Stein 7 years ago
parent
commit
fd6853110d
  1. 3
      shared/multilingual/static/multilingual/js/switch_language.js
  2. 40
      shared/multilingual/templates/multilingual/admin/switch_language.html
  3. 8
      shared/multilingual/templates/multilingual/admin/switch_language_change_form.html

3
shared/multilingual/static/multilingual/js/switch_language.js

@ -6,8 +6,9 @@ function showLanguages(languages) {
if (cls) {
var l = cls.split('_').pop();
if (l.length == 2 || l.length == 3) {
// TODO Currently this filters out *all* fields which have a _ suffix, e.g. template_key
// TODO Quick fix; better use "lang" attribute
if (['id', 'url'].indexOf(l) == -1) {
if (['de', 'en', 'rom'].indexOf(l) > -1) {
lang.push(l);
}
}

40
shared/multilingual/templates/multilingual/admin/switch_language.html

@ -1,24 +1,24 @@
{% load i18n %}
<style>
.language-switch .selected { background-color: #417690 }
.language-switch.end-group { margin-right: 1em; }
</style>
<style>
ul.language-switcher { padding: 14px 40px; float: right; }
a.selected { background-color: #417690 !important; }
</style>
{% get_available_languages as languages %}
<li class="language-switch">
<a class="language-select" href="#" data-languages="{% for lang_code, _ in languages %}{{ lang_code }}{% if not forloop.last %} {% endif %}{% endfor %}">
{% trans 'All' %}
</a>
</li>
{% for lang_code, lang_name in languages %}
<li class="language-switch{% if forloop.last %} end-group{% endif %}">
<a class="language-select{% if request.LANGUAGE_CODE == lang_code %} selected{% endif %}"
href="#"
data-languages="{{ lang_code }}">
{{ lang_name }}
</a>
</li>
{% endfor %}
<ul class="object-tools language-switcher">
<li>
<a class="language-select" href="#" data-languages="{% for lang_code, _ in languages %}{{lang_code}}{% if not forloop.last %} {% endif %}{% endfor %}">
{% trans 'All' %}
</a>
</li>
{% for lang_code, lang_name in languages %}
<li>
<a class="language-select{% if request.LANGUAGE_CODE == lang_code %} selected{% endif %}"
href="#"
data-languages="{{lang_code}}">
{{ lang_name }}
</a>
</li>
{% endfor %}
</ul>

8
shared/multilingual/templates/multilingual/admin/switch_language_change_form.html

@ -0,0 +1,8 @@
{% extends "admin/change_form.html" %}
{% block breadcrumbs %}
{{ block.super }}
<div class="language-switcher">
{% include "multilingual/admin/switch_language.html" %}
</div>
{% endblock %}
Loading…
Cancel
Save