{% import 'shelf/lib.html' as lib with context %} {% macro render_field(form, field, kwargs={}) %} {% if "class_" in kwargs %} {% set classes = "%s %s" % ("form-control", kwargs['class_']) %} {{ field(class_=classes)|safe }} {% else %} {% if field.type == "QuerySelectField" or field.type == "Select2Field" %} {{ field(style="width: 100%", **kwargs)|safe }} {% elif field.type == "BooleanField" %} {{ field(class_="js-switch", **kwargs)|safe }} {% else %} {{ field(class_="form-control", **kwargs)|safe }} {% endif %} {% endif %} {% endmacro %} {% macro render_form_fields(form, form_opts=None, extra=None) %} {% if form.hidden_tag is defined %} {{ form.hidden_tag() }} {% else %} {% if csrf_token %} {% endif %} {% for f in form if f.type == 'HiddenField' %} {{ f }} {% endfor %} {% endif %} {% if extra %} {{ extra }} {% endif %} {% if form_opts and form_opts.form_rules %} {% for r in form_opts.form_rules %} {{ r(form, form_opts=form_opts) }} {% endfor %} {% else %} {% for f in form if f.type != 'HiddenField' and f.type != 'CSRFTokenField' %}
{% if form_opts %} {% set kwargs = form_opts.widget_args.get(f.name, {}) %} {% else %} {% set kwargs = {} %} {% endif %}
{{ render_field(form, f) }}
{% endfor %} {% endif %} {% endmacro %} {% if field[0].form %} {{ render_form_fields(field[0].form) }} {% else %} {{ render_field(form, field[0]) }} {% endif %}
{% for subfield in field[1:] %} {% set lang = field.langs[loop.index] %}

{{ lang.upper() }}

{% if subfield.form %} {{ render_form_fields(subfield.form) }} {% else %} {{ render_field(form, subfield) }} {% endif %}
{% endfor %}