From 3a1a6b988e7cade51c0039e02d918d4f060cf0ba Mon Sep 17 00:00:00 2001 From: Mira Weller Date: Tue, 28 Apr 2026 19:23:35 +0200 Subject: [PATCH] improve i18n, implement "add text block" dialog --- .../pretixcontrol/items/questionnaires.html | 2 + .../js/ui/questionnaires/I18nTextField.vue | 6 +- .../js/ui/questionnaires/Question.vue | 60 +++++++++-------- .../js/ui/questionnaires/Questionnaire.vue | 64 ++++++++++++++++--- .../pretixcontrol/js/ui/questionnaires/api.ts | 8 +++ 5 files changed, 103 insertions(+), 37 deletions(-) diff --git a/src/pretix/control/templates/pretixcontrol/items/questionnaires.html b/src/pretix/control/templates/pretixcontrol/items/questionnaires.html index 80f7c36e9..1937d172f 100644 --- a/src/pretix/control/templates/pretixcontrol/items/questionnaires.html +++ b/src/pretix/control/templates/pretixcontrol/items/questionnaires.html @@ -23,6 +23,8 @@ {% endblocktrans %}

+ {{ request.event.settings.locales|json_script:"event_locales" }} +
diff --git a/src/pretix/static/pretixcontrol/js/ui/questionnaires/I18nTextField.vue b/src/pretix/static/pretixcontrol/js/ui/questionnaires/I18nTextField.vue index fdfe1626c..0493fe213 100644 --- a/src/pretix/static/pretixcontrol/js/ui/questionnaires/I18nTextField.vue +++ b/src/pretix/static/pretixcontrol/js/ui/questionnaires/I18nTextField.vue @@ -1,5 +1,8 @@ @@ -62,10 +85,9 @@ const dlgAddExisting = ref();

- - - - + + +

@@ -94,7 +116,7 @@ const dlgAddExisting = ref(); - + {{ field.internal_name }} - + + + + + +
+ +
+ +
+
+
+ +
+ +
+
+ + +
diff --git a/src/pretix/static/pretixcontrol/js/ui/questionnaires/api.ts b/src/pretix/static/pretixcontrol/js/ui/questionnaires/api.ts index baf98be44..3409ee04f 100644 --- a/src/pretix/static/pretixcontrol/js/ui/questionnaires/api.ts +++ b/src/pretix/static/pretixcontrol/js/ui/questionnaires/api.ts @@ -12,3 +12,11 @@ export async function get_questionnaires() { export async function get_items() { return await (await fetch(`/api/v1/organizers/${organizer_slug}/events/${event_slug}/items/`)).json(); } + +function get_json_script_value(id) { + return JSON.parse(document.getElementById(id).innerText); +} + +export function get_event_locales() { + return get_json_script_value('event_locales'); +}