Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 291b119475 | |||
| f21ce95d72 | |||
| 6cca48eaf9 |
@@ -1,5 +1,6 @@
|
|||||||
{% load i18n %}
|
{% load i18n %}
|
||||||
{% load wagtailcore_tags ocyanjson %}
|
{% load wagtailcore_tags ocyanjson %}
|
||||||
|
{% load mandelstudio_i18n %}
|
||||||
|
|
||||||
{% with settings.cookie_jar.CookieSettings as cookie_settings %}
|
{% with settings.cookie_jar.CookieSettings as cookie_settings %}
|
||||||
{% with request.LANGUAGE_CODE|default:'nl' as language_code %}
|
{% with request.LANGUAGE_CODE|default:'nl' as language_code %}
|
||||||
@@ -14,22 +15,9 @@
|
|||||||
<span>{% if lang == 'ru' %}Конфиденциальность и файлы cookie{% elif lang == 'de' %}Datenschutz & Cookies{% elif lang == 'fr' %}Confidentialité & Cookies{% elif lang == 'es' %}Privacidad y Cookies{% elif lang == 'it' %}Privacy e Cookie{% elif lang == 'pt' %}Privacidade & Cookies{% else %}Privacy & Cookies{% endif %}</span>
|
<span>{% if lang == 'ru' %}Конфиденциальность и файлы cookie{% elif lang == 'de' %}Datenschutz & Cookies{% elif lang == 'fr' %}Confidentialité & Cookies{% elif lang == 'es' %}Privacidad y Cookies{% elif lang == 'it' %}Privacy e Cookie{% elif lang == 'pt' %}Privacidade & Cookies{% else %}Privacy & Cookies{% endif %}</span>
|
||||||
</div>
|
</div>
|
||||||
<div id="cookie_popup_content">
|
<div id="cookie_popup_content">
|
||||||
{% if lang == 'en' and cookie_settings.cookie_message_en %}
|
{% localized_setting_text cookie_settings "cookie_message" as cookie_message_text %}
|
||||||
{{ cookie_settings.cookie_message_en|richtext }}
|
{% if cookie_message_text %}
|
||||||
{% elif lang == 'de' and cookie_settings.cookie_message_de %}
|
{{ cookie_message_text|richtext }}
|
||||||
{{ cookie_settings.cookie_message_de|richtext }}
|
|
||||||
{% elif lang == 'fr' and cookie_settings.cookie_message_fr %}
|
|
||||||
{{ cookie_settings.cookie_message_fr|richtext }}
|
|
||||||
{% elif lang == 'es' and cookie_settings.cookie_message_es %}
|
|
||||||
{{ cookie_settings.cookie_message_es|richtext }}
|
|
||||||
{% elif lang == 'it' and cookie_settings.cookie_message_it %}
|
|
||||||
{{ cookie_settings.cookie_message_it|richtext }}
|
|
||||||
{% elif lang == 'pt' and cookie_settings.cookie_message_pt %}
|
|
||||||
{{ cookie_settings.cookie_message_pt|richtext }}
|
|
||||||
{% elif lang == 'ru' and cookie_settings.cookie_message_ru %}
|
|
||||||
{{ cookie_settings.cookie_message_ru|richtext }}
|
|
||||||
{% elif cookie_settings.cookie_message %}
|
|
||||||
{{ cookie_settings.cookie_message|richtext }}
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<p>
|
<p>
|
||||||
{% blocktrans %}
|
{% blocktrans %}
|
||||||
@@ -57,22 +45,9 @@
|
|||||||
<span>{% if lang == 'ru' %}Настройки cookie{% elif lang == 'de' %}Cookie-Einstellungen{% elif lang == 'fr' %}Paramètres des cookies{% elif lang == 'es' %}Configuración de cookies{% elif lang == 'it' %}Impostazioni cookie{% elif lang == 'pt' %}Definições de cookies{% elif lang == 'en' %}Cookie settings{% else %}Cookie instellingen{% endif %}</span>
|
<span>{% if lang == 'ru' %}Настройки cookie{% elif lang == 'de' %}Cookie-Einstellungen{% elif lang == 'fr' %}Paramètres des cookies{% elif lang == 'es' %}Configuración de cookies{% elif lang == 'it' %}Impostazioni cookie{% elif lang == 'pt' %}Definições de cookies{% elif lang == 'en' %}Cookie settings{% else %}Cookie instellingen{% endif %}</span>
|
||||||
</div>
|
</div>
|
||||||
<div id="cookie_popup_content_modal">
|
<div id="cookie_popup_content_modal">
|
||||||
{% if lang == 'en' and cookie_settings.popup_cookie_message_en %}
|
{% localized_setting_text cookie_settings "popup_cookie_message" as popup_cookie_message_text %}
|
||||||
{{ cookie_settings.popup_cookie_message_en|richtext }}
|
{% if popup_cookie_message_text %}
|
||||||
{% elif lang == 'de' and cookie_settings.popup_cookie_message_de %}
|
{{ popup_cookie_message_text|richtext }}
|
||||||
{{ cookie_settings.popup_cookie_message_de|richtext }}
|
|
||||||
{% elif lang == 'fr' and cookie_settings.popup_cookie_message_fr %}
|
|
||||||
{{ cookie_settings.popup_cookie_message_fr|richtext }}
|
|
||||||
{% elif lang == 'es' and cookie_settings.popup_cookie_message_es %}
|
|
||||||
{{ cookie_settings.popup_cookie_message_es|richtext }}
|
|
||||||
{% elif lang == 'it' and cookie_settings.popup_cookie_message_it %}
|
|
||||||
{{ cookie_settings.popup_cookie_message_it|richtext }}
|
|
||||||
{% elif lang == 'pt' and cookie_settings.popup_cookie_message_pt %}
|
|
||||||
{{ cookie_settings.popup_cookie_message_pt|richtext }}
|
|
||||||
{% elif lang == 'ru' and cookie_settings.popup_cookie_message_ru %}
|
|
||||||
{{ cookie_settings.popup_cookie_message_ru|richtext }}
|
|
||||||
{% elif cookie_settings.popup_cookie_message %}
|
|
||||||
{{ cookie_settings.popup_cookie_message|richtext }}
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<p>
|
<p>
|
||||||
{% blocktrans %}
|
{% blocktrans %}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
from django import template
|
from django import template
|
||||||
|
from django.utils.translation import get_language
|
||||||
|
|
||||||
from mandelstudio.i18n_utils import normalize_set_language_next
|
from mandelstudio.i18n_utils import normalize_set_language_next
|
||||||
|
|
||||||
@@ -29,3 +30,22 @@ def skip_to_content_text(context) -> str:
|
|||||||
def language_neutral_path(value: str | None) -> str:
|
def language_neutral_path(value: str | None) -> str:
|
||||||
"""Normalize a path for set_language by removing any leading language prefix."""
|
"""Normalize a path for set_language by removing any leading language prefix."""
|
||||||
return normalize_set_language_next(value)
|
return normalize_set_language_next(value)
|
||||||
|
|
||||||
|
|
||||||
|
@register.simple_tag
|
||||||
|
def localized_setting_text(settings_obj, field_name: str, fallback_text: str = "") -> str:
|
||||||
|
"""
|
||||||
|
Resolve a translated settings field by active language and fallback to base field.
|
||||||
|
"""
|
||||||
|
if not settings_obj or not field_name:
|
||||||
|
return fallback_text
|
||||||
|
|
||||||
|
language = (get_language() or "").lower().split("-")[0]
|
||||||
|
if language and language != "nl":
|
||||||
|
translated_name = f"{field_name}_{language}"
|
||||||
|
translated_value = getattr(settings_obj, translated_name, None)
|
||||||
|
if translated_value:
|
||||||
|
return translated_value
|
||||||
|
|
||||||
|
base_value = getattr(settings_obj, field_name, None)
|
||||||
|
return base_value or fallback_text
|
||||||
|
|||||||
Reference in New Issue
Block a user