{% macro render_field_errors(field) %} {% if field.errors %}

{{ field.errors|join(', ') }}

{% endif %} {% endmacro %} {% macro render_field_label(field) %} {% if field.label.text and field.type != 'HiddenField' and kwargs.pop('use_label', True) %} {% endif %} {% endmacro %} {% macro render_field_description(field) %} {% if field.description or kwargs.get('description', '') %}

{{ field.description|safe or kwargs.get('description', '') }}

{% endif %} {% endmacro %} {# Render Field Macro for WTForms (Bootstrap Compat) #} {% macro render_field(field) %} {% if field.type == 'SubmitField' %} {{ field(class_='btn btn-default', **kwargs)|safe }} {% else %}
{% if field.type == 'FileField' %}
Select file Change {{ field(**kwargs) }} Remove
{% else %} {% if field.type == 'BooleanField' %}
{% elif field.type in ('DateField', 'TextField', 'StringField', 'TextAreaField', 'PasswordField') %} {# Standard Text Fields #} {{ render_field_label(field, **kwargs)}} {% if 'prefix' in kwargs %}
{{ kwargs['prefix'] }}
{{ field(**kwargs)|safe }}
{% else %} {{ field(**kwargs)|safe }} {% endif %} {% elif field.type in ['SelectField', 'QuerySelectField', 'SelectMultipleField', 'QuerySelectMultipleField'] %} {{ render_field_label(field, **kwargs)}} {% if 'group_by' in kwargs %} {% set data = group_by(field.iter_choices(), kwargs['group_by']) %} {% else %} {# {{ field(class_=class_ + ' input-xlarge form-control', style="margin-top:0px;", **kwargs) }} #} {% endif %} {% elif field.type == 'FileField' %} {{ render_field_label(field, **kwargs)}} {{ field(class_='form-control', **kwargs)|safe }} {% else %} {{ render_field_label(field, **kwargs)}} {{ field(class_='form-control', **kwargs)|safe }} {% endif %} {% endif %} {{ render_field_errors(field) }} {{ render_field_description(field) }}
{% endif %} {% endmacro %} {% macro csrf_setup() %} {% endmacro %}