diff --git a/src/pretix/base/forms/widgets.py b/src/pretix/base/forms/widgets.py
index 2acf7dd53..45eb48d87 100644
--- a/src/pretix/base/forms/widgets.py
+++ b/src/pretix/base/forms/widgets.py
@@ -42,6 +42,8 @@ from django.utils.html import escape
from django.utils.timezone import get_current_timezone, now
from django.utils.translation import gettext_lazy as _
+from pretix.helpers.format import PlainHtmlAlternativeString
+
def replace_arabic_numbers(inp):
if not isinstance(inp, str):
@@ -61,11 +63,18 @@ def replace_arabic_numbers(inp):
return inp.translate(table)
+def format_placeholder_help_text(placeholder_name, sample_value):
+ if isinstance(sample_value, PlainHtmlAlternativeString):
+ sample_value = sample_value.plain
+ title = (_("Sample: %s") % sample_value) if sample_value else ""
+ return ('' % (escape(title), escape(placeholder_name)))
+
+
def format_placeholders_help_text(placeholders, event=None):
placeholders = [(k, v.render_sample(event) if event else v) for k, v in placeholders.items()]
placeholders.sort(key=lambda x: x[0])
phs = [
- '' % (escape(_("Sample: %s") % v) if v else "", escape(k))
+ format_placeholder_help_text(k, v)
for k, v in placeholders
]
return _('Available placeholders: {list}').format(