fix(i18n): strip existing language prefix in manage language switch

This commit is contained in:
2026-04-10 22:41:53 +02:00
parent 89773de4d1
commit 8b95fa5b2b
4 changed files with 59 additions and 4 deletions

View File

@@ -1,9 +1,9 @@
{% load i18n i18n_helpers %}
{% load i18n mandelstudio_i18n %}
{% get_current_language as LANGUAGE_CODE %}
<div class="header-right">
<form action="{% url 'set_language' %}" method="post" class="ms-lang-switcher me-2" aria-label="Language switcher">
{% csrf_token %}
<input name="next" type="hidden" value="{{ language_neutral_url_path|default:request.path|untranslated_url }}">
<input name="next" type="hidden" value="{{ language_neutral_url_path|default:request.path|language_neutral_path }}">
<label for="header-language-switcher" class="visually-hidden">{% trans "Language" %}</label>
<select id="header-language-switcher" name="language" class="form-select form-select-sm" onchange="this.form.submit()">
<option value="nl" {% if LANGUAGE_CODE == 'nl' %}selected{% endif %}>NL</option>

View File

@@ -1,5 +1,5 @@
<!-- MB OVERRIDE -->
{% load i18n static ocyanjson i18n_helpers %}
{% load i18n static ocyanjson mandelstudio_i18n %}
<div class="dropdown language-dropdown">
<button type="button" id="dropdownMenuButton1" data-bs-toggle="dropdown" aria-expanded="false">
@@ -10,7 +10,7 @@
{% ocyanjson "i18n" "language_chooser_disabled_options" "" as disabled_languages %}
<form action="{% url 'set_language' %}" method="post" class="language_form">
{% csrf_token %}
<input name="next" type="hidden" value="{{ language_neutral_url_path|default:request.path|untranslated_url }}"/>
<input name="next" type="hidden" value="{{ language_neutral_url_path|default:request.path|language_neutral_path }}"/>
{% for language in languages %}
{% if language.code not in disabled_languages %}
<li><button class="dropdown-item" type="submit" value="{{language.code}}" name="language">{% include "oxyan/partials/flags/"|add:language.code|add:".svg" %} {{ language.name_local|title }}</button></li>