From a46d5adcc9a1e2482a093c81a7c698dbd5d46791 Mon Sep 17 00:00:00 2001 From: Andrea Lepori Date: Wed, 18 May 2022 18:39:23 +0200 Subject: add support for heading in custom params --- client/templates/client/doc_create.html | 10 +++++++++- client/templates/client/doc_edit.html | 10 +++++++++- client/templatetags/app_filter.py | 18 ++++++++++++++++++ 3 files changed, 36 insertions(+), 2 deletions(-) (limited to 'client') diff --git a/client/templates/client/doc_create.html b/client/templates/client/doc_create.html index 71bdbbe..c42fa05 100644 --- a/client/templates/client/doc_create.html +++ b/client/templates/client/doc_create.html @@ -109,7 +109,13 @@ {% endif %} {% if custom_data %} {% for key in keys %} - {% if key.key_extra|first in '!' %} + {% if key.key_extra|is_heading %} +
+
+
{{key.key_extra|parse_heading}}
+
+
+ {% elif key.key_extra|is_multiple_choice %}
{% with arr=key.key_extra|parse_multiple_choice %} @@ -123,6 +129,8 @@ {% endwith %}
+ {% elif key.key_extra|is_checkbox %} + checkbox {% else %}
diff --git a/client/templates/client/doc_edit.html b/client/templates/client/doc_edit.html index 40deb26..2cf3e24 100644 --- a/client/templates/client/doc_edit.html +++ b/client/templates/client/doc_edit.html @@ -65,7 +65,13 @@ {% endif %} {% if custom_data %} {% for key in keys %} - {% if key.key_extra|first in '!' %} + {% if key.key_extra|is_heading %} +
+
+
{{key.key_extra|parse_heading}}
+
+
+ {% elif key.key_extra|is_multiple_choice %}
{% with arr=key.key_extra|parse_multiple_choice %} @@ -86,6 +92,8 @@ {% endwith %}
+ {% elif key.key_extra|is_checkbox %} + checkbox {% else %}
diff --git a/client/templatetags/app_filter.py b/client/templatetags/app_filter.py index ed44138..5385852 100644 --- a/client/templatetags/app_filter.py +++ b/client/templatetags/app_filter.py @@ -38,6 +38,18 @@ def doc_count(doc): return doc_count +@register.filter(name="is_multiple_choice") +def is_multiple_choice(str): + return str.startswith("!m") + +@register.filter(name="is_checkbox") +def is_checkbox(str): + return str.startswith("!c") + +@register.filter(name="is_heading") +def is_heading(str): + return str.startswith("!h") + @register.filter(name="parse_multiple_choice") def parse_multiple_choice(str): if len(str) < 3: @@ -50,6 +62,12 @@ def parse_multiple_choice(str): return [arr[0], arr[1:]] +@register.filter(name="parse_heading") +def parse_heading(str): + if len(str) < 3: + return str + return str[3:] + @register.filter(name="parse_userswitcher") def parse_userswitcher(str): if not str: -- cgit v1.2.1