Created
March 11, 2014 11:24
-
-
Save ThiefMaster/9483901 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{%- macro form_field_label(field, label_for=true) -%} | |
<label{% if label_for %} for="{{ field.id }}"{% endif %}>{{ field.label.text }} | |
{%- if field.flags.required -%} | |
<span class="ym-required" title="Dieses Feld muss ausgefüllt werden.">*</span> | |
{%- endif %}</label> | |
{% endmacro %} | |
{%- macro form_field_errors(field) -%} | |
{% if field.errors %} | |
<strong class="ym-message"> | |
{{ field.errors|join('<br>'|safe) }} | |
</strong> | |
{% endif %} | |
{%- endmacro -%} | |
{%- macro form_field(field, label_for=true) -%} | |
{% set cls = field.widget.__class__.__name__ %} | |
{% if field == None %} | |
{# nothing #} | |
{% elif field.type in ('HiddenField', 'CSRFTokenField') or cls == 'HiddenInput' %} | |
{% if caller %} | |
<div class="{% if field.errors %}error {% endif %} ym-fbox-text"> | |
{{ form_field_errors(field) }} | |
{{ form_field_label(field, label_for) }} | |
{{ caller() }} | |
</div> | |
{% else %} | |
{{ field() }} | |
{% endif %} | |
{% else %} | |
<div class="{% if field.errors %}ym-error {% endif %}ym-fbox-{% if cls == 'SubmitInput' %}button{% elif cls in ('RadioInput', 'ListWidget', 'CheckboxInput') %}check{% elif cls == 'Select' %}select{% else %}text{% endif %}"> | |
{% if field.type == 'BooleanField' %} | |
{{ form_field_errors(field) }} | |
{{ field(**kwargs) }} | |
{{ form_field_label(field, label_for) }} | |
{% elif field.type == 'RadioField' %} | |
<fieldset> | |
{{ form_field_errors(field) }} | |
<legend>{{ field.label.text }}</legend> | |
{% for subfield in field %} | |
<div> | |
{{ subfield(**kwargs) }} | |
{{ form_field_label(subfield, label_for) }} | |
</div> | |
{% endfor %} | |
</fieldset> | |
{% elif field.type == 'SelectMultipleField' and field.size %} | |
{{ form_field_errors(field) }} | |
{{ form_field_label(field, label_for) }} | |
{{ field(size=field.size, **kwargs) }} | |
{% else %} | |
{{ form_field_errors(field) }} | |
{{ form_field_label(field, label_for) }} | |
{{ field(**kwargs) }} | |
{% if caller %} | |
<div style="margin-left:30%; clear:left;">{{ caller() }}</div> | |
{% endif %} | |
{% endif %} | |
</div> | |
{% endif %} | |
{%- endmacro -%} | |
{%- macro form_fields(form, legend='', fieldset=True, fields=None, skip=(), hidden=False) -%} | |
{% for field in form if hidden and (field.type in ('HiddenField', 'CSRFTokenField') or field.widget.__class__.__name__ == 'HiddenInput') %} | |
{% if field.errors %} | |
<div class="error global-error"> | |
{{ form_field_errors(field) }} | |
</div> | |
{% endif %} | |
{{ field() }} | |
{% endfor %} | |
{% if fieldset %}<fieldset>{% endif %} | |
{% if legend %}<legend>{{ legend }}</legend>{% endif %} | |
{% if fields %} | |
{% for field_name in fields if field_name not in skip and field_name in form %} | |
{% set field = form[field_name] %} | |
{% if field.type not in ('HiddenField', 'CSRFTokenField') %} | |
{{ form_field(field) }} | |
{% endif %} | |
{% endfor %} | |
{% else %} | |
{% for field in form if field.type not in ('HiddenField', 'CSRFTokenField') and field.short_name not in skip %} | |
{{ form_field(field) }} | |
{% endfor %} | |
{% endif %} | |
{% if fieldset %}</fieldset>{% endif %} | |
{%- endmacro -%} | |
{%- macro form_header(form, errors_for=(), skip=()) -%} | |
{% for field in form if (field.type in ('HiddenField', 'CSRFTokenField') or field.short_name in errors_for) and (field.short_name not in skip) %} | |
{% if field.errors %} | |
<div class="error global-error"> | |
{{ form_field_errors(field) }} | |
</div> | |
{% endif %} | |
{% if field.type in ('HiddenField', 'CSRFTokenField') %} | |
{{ field() }} | |
{% endif %} | |
{% endfor %} | |
{%- endmacro -%} | |
{%- macro form_submit(title='Absenden', back=none, back_title='Zurück', disabled=false, id=none) -%} | |
<div class="ym-fbox-button"> | |
<input type="submit" value="{{ title }}"{% if disabled %} disabled{% endif %}{% if id %} id="{{ id }}"{% endif %}> | |
{% if back %} | |
<input type="button" onclick="location.href = '{{ back }}';" value="{{ back_title }}"> | |
{% endif %} | |
</div> | |
{%- endmacro -%} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment