Commit 7fef9c56 authored by cynddl's avatar cynddl

Add support for client i18n (and fix language navigation)

parent 05a73122
...@@ -21,6 +21,7 @@ ALLOWED_HOSTS = [] ...@@ -21,6 +21,7 @@ ALLOWED_HOSTS = []
MIDDLEWARE = [ MIDDLEWARE = [
"django.middleware.security.SecurityMiddleware", "django.middleware.security.SecurityMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware", "django.contrib.sessions.middleware.SessionMiddleware",
"django.middleware.locale.LocaleMiddleware",
"django.middleware.common.CommonMiddleware", "django.middleware.common.CommonMiddleware",
"django.middleware.csrf.CsrfViewMiddleware", "django.middleware.csrf.CsrfViewMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware", "django.contrib.auth.middleware.AuthenticationMiddleware",
......
...@@ -16,6 +16,8 @@ router.extend(rp_router) ...@@ -16,6 +16,8 @@ router.extend(rp_router)
urlpatterns = [ urlpatterns = [
url(r"^admin/", admin.site.urls), url(r"^admin/", admin.site.urls),
url(r'^i18n/', include('django.conf.urls.i18n')),
url(r"^api/", include(router.urls, namespace="api")), url(r"^api/", include(router.urls, namespace="api")),
url(r"^rp/", include("rp.urls", namespace="rp")), url(r"^rp/", include("rp.urls", namespace="rp")),
url(r'^accounts/', include('allauth.urls')), url(r'^accounts/', include('allauth.urls')),
......
/* Navigation */ /* Navigation */
@custom-selector :--enter :hover, :focus; @custom-selector :--enter :hover, :focus;
@custom-selector :--link a, .btn-link;
@custom-selector :--navbar-blue .navbar.dark-blue-bg, .navbar.medium-blue-bg;
.navbar-sm { .navbar-sm {
font-size: 13px; font-size: 13px;
font-weight: 600; font-weight: 600;
} }
.navbar a { .navbar :--link {
color: var(--color-medium-blue); color: var(--color-medium-blue);
line-height: 1.5rem;
font-size: 13px;
font-weight: 600;
border: 0;
padding: 0.5em 1em;
&:--enter { &:--enter {
color: var(--color-dark-blue); color: var(--color-dark-blue);
} }
...@@ -19,10 +28,12 @@ ...@@ -19,10 +28,12 @@
position: absolute; position: absolute;
} }
.navbar.dark-blue-bg a, .navbar.medium-blue-bg a { :--navbar-blue :--link {
color: var(--color-white); color: var(--color-white);
&:--enter { &:--enter {
color: var(--color-medium-gray); color: var(--color-medium-gray);
text-decoration: none;
cursor: pointer;
} }
} }
...@@ -53,7 +64,7 @@ ul.nav.nav-integrated li { ...@@ -53,7 +64,7 @@ ul.nav.nav-integrated li {
background-color: var(--color-white); background-color: var(--color-white);
} }
& a { & :--link {
padding: 1rem; padding: 1rem;
font-weight: bold; font-weight: bold;
text-align: center; text-align: center;
......
{% load static %} {% load static %}
{% load i18n %}
<!DOCTYPE html> <!DOCTYPE html>
<!-- Header --> <!-- Header -->
<html> <html>
...@@ -26,15 +27,27 @@ ...@@ -26,15 +27,27 @@
<ul class="navbar-nav ml-auto"> <ul class="navbar-nav ml-auto">
{% if user.is_authenticated %} {% if user.is_authenticated %}
{% comment %} <li class="nav-item"><a class="nav-link" href="{% url 'account_profile' %}">Mon profile</a></li> {% endcomment %} {% comment %} <li class="nav-item"><a class="nav-link" href="{% url 'account_profile' %}">Mon profile</a></li> {% endcomment %}
<li class="nav-item"><a class="nav-link" href="{% url 'account_logout' %}">Déconnexion</a></li> <li class="nav-item"><a class="nav-link" href="{% url 'account_logout' %}">{% trans "Logout" %}</a></li>
{% else %} {% else %}
<li class="nav-item"><a class="nav-link" href="{% url 'account_signup' %}">Créer un compte</a></li> <li class="nav-item"><a class="nav-link" href="{% url 'account_signup' %}">{% trans "Register" %}</a></li>
<li class="nav-item"><a class="nav-link" href="{% url 'account_login' %}">Se connecter</a></li> <li class="nav-item"><a class="nav-link" href="{% url 'account_login' %}">{% trans "Login" %}</a></li>
{% endif %} {% endif %}
<li class="nav-item"><a class="nav-link" href="https://soutien.laquadrature.net">[FR]</a></li>
<li class="nav-item"><a class="nav-link" href="https://support.laquadrature.net">[EN]</a></li> {% get_available_languages as LANGUAGES %}
{% get_language_info_list for LANGUAGES as languages %}
{% for language in languages %}
<li class="nav-item">
<form 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 class="btn btn-link" type="submit">[{{ language.code }}]</button>
</form>
</li>
{% endfor %}
</ul> </ul>
</div> </div>
</nav> </nav>
<nav class="navbar navbar-toggleable-md"> <nav class="navbar navbar-toggleable-md">
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment