Fix-bug-667-Use-lazy_pass_to_ugettext-for-forms.
[mediagoblin.git] / mediagoblin / templates / mediagoblin / utils / wtforms.html
CommitLineData
76c9ea6b
WKG
1{#
2# GNU MediaGoblin -- federated, autonomous media hosting
cf29e8a8 3# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
76c9ea6b
WKG
4#
5# This program is free software: you can redistribute it and/or modify
6# it under the terms of the GNU Affero General Public License as published by
7# the Free Software Foundation, either version 3 of the License, or
8# (at your option) any later version.
9#
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13# GNU Affero General Public License for more details.
14#
15# You should have received a copy of the GNU Affero General Public License
16# along with this program. If not, see <http://www.gnu.org/licenses/>.
17#}
8566cdda 18
cde7a07d
E
19{# Render the label for a field #}
20{% macro render_label(field) %}
21 {%- if field.label.text -%}
665b9c42 22 <label for="{{ field.label.field_id }}">{{ field.label.text }}</label>
cde7a07d
E
23 {%- endif -%}
24{%- endmacro %}
25
26{# Render the label in a <p> for a field #}
27{% macro render_label_p(field) %}
28 {%- if field.label.text %}
29 <p class="form_field_label">
30 {{- render_label(field) -}}
31 </p>
32 {%- endif %}
33{%- endmacro %}
34
528f9acd
CAW
35{# Generically render a field #}
36{% macro render_field_div(field) %}
cde7a07d 37 {{- render_label_p(field) }}
aea6d577
JS
38 <div class="form_field_input">
39 {{ field }}
528f9acd
CAW
40 {%- if field.errors -%}
41 {% for error in field.errors %}
665b9c42 42 <p class="form_field_error">{{ error }}</p>
528f9acd
CAW
43 {% endfor %}
44 {%- endif %}
b4ea20fa 45 {%- if field.description %}
665b9c42 46 <p class="form_field_description">{{ field.description|safe }}</p>
04a7b06d 47 {%- endif %}
528f9acd
CAW
48 </div>
49{%- endmacro %}
50
8566cdda
CAW
51{# Auto-render a form as a series of divs #}
52{% macro render_divs(form) -%}
53 {% for field in form %}
528f9acd 54 {{ render_field_div(field) }}
8566cdda
CAW
55 {% endfor %}
56{%- endmacro %}
57
58{# Auto-render a form as a table #}
ef7cdac5
CAW
59{% macro render_table(form) -%}
60 {% for field in form %}
61 <tr>
665b9c42 62 <th>{{ field.label.text }}</th>
ef7cdac5
CAW
63 <td>
64 {{field}}
65 {% if field.errors %}
66 <br />
67 <ul class="errors">
68 {% for error in field.errors %}
69 <li>{{error}}</li>
70 {% endfor %}
71 </ul>
72 {% endif %}
73 </td>
74 </tr>
75 {% endfor %}
76{%- endmacro %}