{% macro form_input(field) %} {{ field }} {% endmacro %} {% macro form_help(field) %} {% if field.description %}
{{ field.description }}
{% endif %} {% endmacro %} {% macro form_label(field) %} {% endmacro %} {% macro form_errors(field) %} {% endmacro %} {% macro form_field(field, input=null, label=null) %} {% if field.type == 'BooleanField' %} {{ checkbox_field(field, label) }} {% elif field.type == 'HiddenField' %} {{ form_input(field) }} {% elif field.type == 'MultipleFileField' %} {{ multiple_file_field(field) }} {% elif field.type == 'FormField' %} {{ form_form_field(field) }} {% else %}
{{ label if label else form_label(field) }} {{ input if input else form_input(field) }} {{ form_help(field) if field.description else '' }} {{ form_errors(field) if field.errors else '' }}
{% endif %} {% endmacro %} {% macro checkbox_input(field, label='') %}
{{ form_input(field) }} {{ label if label else form_label(field) }}
{% endmacro %} {% macro checkbox_field(field, label) %}
{{ checkbox_input(field, label) }} {{ form_help(field) if field.description else '' }} {{ form_errors(field) if field.errors else '' }}
{% endmacro %} {% macro radio_input(field, horizontal=false) %}
{% for value, label in field.choices %}
{% endfor %}
{% endmacro %} {% macro radio_field(field, horizontal=false) %}
{{ form_label(field) }} {{ radio_input(field, horizontal) }} {{ form_help(field) if field.description else '' }} {{ form_errors(field) if field.errors else '' }}
{% endmacro %} {% macro multi_checkboxes_input(field) %}
{% for value, label in field.choices %}
{% endfor %}
{% endmacro %} {% macro multi_checkboxes_field(field) %} {% set input = multi_checkboxes_input(field) %} {{ form_field(field, input) }} {% endmacro %}