9 changed files with 157 additions and 44 deletions
@ -0,0 +1,29 @@
|
||||
{% load i18n translation_tags %} |
||||
|
||||
{% get_language_info_list for LANGUAGES as languages %} |
||||
|
||||
{% for language in languages %} |
||||
{% if request.LANGUAGE_CODE != language.code %} |
||||
<a class="language-switch" rel="alternate" hreflang="de" href="{% url 'set_language' %}?language={{ language.code }}">{{ language.name_local }}</a> |
||||
{% else %} |
||||
<span class="selected-language">{{ language.name_local }}</span> |
||||
{% endif %} |
||||
{% if not forloop.last %}{{ separator|default:"/" }}{% endif %} |
||||
{% endfor %} |
||||
|
||||
|
||||
{% comment %} |
||||
// Language Switcher |
||||
|
||||
html { |
||||
.selected-language { color: $active_color; } |
||||
|
||||
&:lang(de) { |
||||
a.language-switch[hreflang=en] { @include interactive-underline; } |
||||
} |
||||
|
||||
&:lang(en) { |
||||
a.language-switch[hreflang=de] { @include interactive-underline; } |
||||
} |
||||
} |
||||
{% endcomment %} |
@ -0,0 +1,50 @@
|
||||
{% load i18n %} |
||||
|
||||
{% get_language_info_list for LANGUAGES as languages %} |
||||
|
||||
{% for language in languages %} |
||||
{% if request.LANGUAGE_CODE != language.code %} |
||||
<form class="language-switch" action="{% url 'set_language' %}" method="post"> |
||||
{% csrf_token %} |
||||
<input name="next" type="hidden" value="{{ redirect_to }}"> |
||||
<input name="language" type="hidden" value="{{ language.code }}"> |
||||
<button type="submit">{{ language.name_local }}</button> |
||||
</form> |
||||
{% else %} |
||||
<span class="selected-language">{{ language.name_local }}</span> |
||||
{% endif %} |
||||
{% if not forloop.last %}{{ separator|default:"/" }}{% endif %} |
||||
{% endfor %} |
||||
|
||||
|
||||
{% comment %} |
||||
// Language Switcher |
||||
|
||||
form.language-switch { |
||||
display: inline; |
||||
margin: 0; |
||||
padding: 0; |
||||
} |
||||
|
||||
form.language-switch button { |
||||
margin: 0; |
||||
padding: 0; |
||||
border: none; |
||||
background: none; |
||||
|
||||
@include interactive-underline; |
||||
} |
||||
|
||||
html { |
||||
.selected-language { color: $active_color; } |
||||
|
||||
&:lang(de) { |
||||
a.language-switch[hreflang=en] { @include interactive-underline; } |
||||
} |
||||
|
||||
&:lang(en) { |
||||
a.language-switch[hreflang=de] { @include interactive-underline; } |
||||
} |
||||
} |
||||
|
||||
{% endcomment %} |
@ -1,33 +0,0 @@
|
||||
# -*- coding: utf-8 -*- |
||||
from __future__ import unicode_literals |
||||
# Erik Stein <code@classlibrary.net>, 2015 |
||||
|
||||
from django import template |
||||
from django.template.defaultfilters import stringfilter |
||||
from django.utils.html import conditional_escape |
||||
from django.utils.safestring import mark_safe |
||||
from .. import markdown_utils |
||||
|
||||
|
||||
register = template.Library() |
||||
|
||||
|
||||
@register.filter(needs_autoescape=True) |
||||
@stringfilter |
||||
def inline_markdown(text, autoescape=None, **kwargs): |
||||
""" Doesn't wrap the markup in a HTML paragraph. """ |
||||
if autoescape: |
||||
esc = conditional_escape |
||||
else: |
||||
esc = lambda x: x |
||||
return mark_safe(markdown_utils.inline_markdown_processor.convert(esc(text), **kwargs)) |
||||
|
||||
|
||||
@register.filter(needs_autoescape=True) |
||||
@stringfilter |
||||
def markdown(text, autoescape=None, **kwargs): |
||||
if autoescape: |
||||
esc = conditional_escape |
||||
else: |
||||
esc = lambda x: x |
||||
return mark_safe(markdown_utils.markdown_processor.convert(esc(text), **kwargs)) |
Loading…
Reference in new issue