]> git.immae.eu Git - github/wallabag/wallabag.git/blob - vendor/symfony/twig-bridge/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig
twig implementation
[github/wallabag/wallabag.git] / vendor / symfony / twig-bridge / Symfony / Bridge / Twig / Resources / views / Form / form_div_layout.html.twig
1 {# Widgets #}
2
3 {% block form_widget %}
4 {% spaceless %}
5 {% if compound %}
6 {{ block('form_widget_compound') }}
7 {% else %}
8 {{ block('form_widget_simple') }}
9 {% endif %}
10 {% endspaceless %}
11 {% endblock form_widget %}
12
13 {% block form_widget_simple %}
14 {% spaceless %}
15 {% set type = type|default('text') %}
16 <input type="{{ type }}" {{ block('widget_attributes') }} {% if value is not empty %}value="{{ value }}" {% endif %}/>
17 {% endspaceless %}
18 {% endblock form_widget_simple %}
19
20 {% block form_widget_compound %}
21 {% spaceless %}
22 <div {{ block('widget_container_attributes') }}>
23 {% if form.parent is empty %}
24 {{ form_errors(form) }}
25 {% endif %}
26 {{ block('form_rows') }}
27 {{ form_rest(form) }}
28 </div>
29 {% endspaceless %}
30 {% endblock form_widget_compound %}
31
32 {% block collection_widget %}
33 {% spaceless %}
34 {% if prototype is defined %}
35 {% set attr = attr|merge({'data-prototype': form_row(prototype) }) %}
36 {% endif %}
37 {{ block('form_widget') }}
38 {% endspaceless %}
39 {% endblock collection_widget %}
40
41 {% block textarea_widget %}
42 {% spaceless %}
43 <textarea {{ block('widget_attributes') }}>{{ value }}</textarea>
44 {% endspaceless %}
45 {% endblock textarea_widget %}
46
47 {% block choice_widget %}
48 {% spaceless %}
49 {% if expanded %}
50 {{ block('choice_widget_expanded') }}
51 {% else %}
52 {{ block('choice_widget_collapsed') }}
53 {% endif %}
54 {% endspaceless %}
55 {% endblock choice_widget %}
56
57 {% block choice_widget_expanded %}
58 {% spaceless %}
59 <div {{ block('widget_container_attributes') }}>
60 {% for child in form %}
61 {{ form_widget(child) }}
62 {{ form_label(child) }}
63 {% endfor %}
64 </div>
65 {% endspaceless %}
66 {% endblock choice_widget_expanded %}
67
68 {% block choice_widget_collapsed %}
69 {% spaceless %}
70 <select {{ block('widget_attributes') }}{% if multiple %} multiple="multiple"{% endif %}>
71 {% if empty_value is not none %}
72 <option {% if required %} disabled="disabled"{% if value is empty %} selected="selected"{% endif %}{% else %} value=""{% endif %}>{{ empty_value|trans({}, translation_domain) }}</option>
73 {% endif %}
74 {% if preferred_choices|length > 0 %}
75 {% set options = preferred_choices %}
76 {{ block('choice_widget_options') }}
77 {% if choices|length > 0 and separator is not none %}
78 <option disabled="disabled">{{ separator }}</option>
79 {% endif %}
80 {% endif %}
81 {% set options = choices %}
82 {{ block('choice_widget_options') }}
83 </select>
84 {% endspaceless %}
85 {% endblock choice_widget_collapsed %}
86
87 {% block choice_widget_options %}
88 {% spaceless %}
89 {% for group_label, choice in options %}
90 {% if choice is iterable %}
91 <optgroup label="{{ group_label|trans({}, translation_domain) }}">
92 {% set options = choice %}
93 {{ block('choice_widget_options') }}
94 </optgroup>
95 {% else %}
96 <option value="{{ choice.value }}"{% if choice is selectedchoice(value) %} selected="selected"{% endif %}>{{ choice.label|trans({}, translation_domain) }}</option>
97 {% endif %}
98 {% endfor %}
99 {% endspaceless %}
100 {% endblock choice_widget_options %}
101
102 {% block checkbox_widget %}
103 {% spaceless %}
104 <input type="checkbox" {{ block('widget_attributes') }}{% if value is defined %} value="{{ value }}"{% endif %}{% if checked %} checked="checked"{% endif %} />
105 {% endspaceless %}
106 {% endblock checkbox_widget %}
107
108 {% block radio_widget %}
109 {% spaceless %}
110 <input type="radio" {{ block('widget_attributes') }}{% if value is defined %} value="{{ value }}"{% endif %}{% if checked %} checked="checked"{% endif %} />
111 {% endspaceless %}
112 {% endblock radio_widget %}
113
114 {% block datetime_widget %}
115 {% spaceless %}
116 {% if widget == 'single_text' %}
117 {{ block('form_widget_simple') }}
118 {% else %}
119 <div {{ block('widget_container_attributes') }}>
120 {{ form_errors(form.date) }}
121 {{ form_errors(form.time) }}
122 {{ form_widget(form.date) }}
123 {{ form_widget(form.time) }}
124 </div>
125 {% endif %}
126 {% endspaceless %}
127 {% endblock datetime_widget %}
128
129 {% block date_widget %}
130 {% spaceless %}
131 {% if widget == 'single_text' %}
132 {{ block('form_widget_simple') }}
133 {% else %}
134 <div {{ block('widget_container_attributes') }}>
135 {{ date_pattern|replace({
136 '{{ year }}': form_widget(form.year),
137 '{{ month }}': form_widget(form.month),
138 '{{ day }}': form_widget(form.day),
139 })|raw }}
140 </div>
141 {% endif %}
142 {% endspaceless %}
143 {% endblock date_widget %}
144
145 {% block time_widget %}
146 {% spaceless %}
147 {% if widget == 'single_text' %}
148 {{ block('form_widget_simple') }}
149 {% else %}
150 {% set vars = widget == 'text' ? { 'attr': { 'size': 1 }} : {} %}
151 <div {{ block('widget_container_attributes') }}>
152 {{ form_widget(form.hour, vars) }}{% if with_minutes %}:{{ form_widget(form.minute, vars) }}{% endif %}{% if with_seconds %}:{{ form_widget(form.second, vars) }}{% endif %}
153 </div>
154 {% endif %}
155 {% endspaceless %}
156 {% endblock time_widget %}
157
158 {% block number_widget %}
159 {% spaceless %}
160 {# type="number" doesn't work with floats #}
161 {% set type = type|default('text') %}
162 {{ block('form_widget_simple') }}
163 {% endspaceless %}
164 {% endblock number_widget %}
165
166 {% block integer_widget %}
167 {% spaceless %}
168 {% set type = type|default('number') %}
169 {{ block('form_widget_simple') }}
170 {% endspaceless %}
171 {% endblock integer_widget %}
172
173 {% block money_widget %}
174 {% spaceless %}
175 {{ money_pattern|replace({ '{{ widget }}': block('form_widget_simple') })|raw }}
176 {% endspaceless %}
177 {% endblock money_widget %}
178
179 {% block url_widget %}
180 {% spaceless %}
181 {% set type = type|default('url') %}
182 {{ block('form_widget_simple') }}
183 {% endspaceless %}
184 {% endblock url_widget %}
185
186 {% block search_widget %}
187 {% spaceless %}
188 {% set type = type|default('search') %}
189 {{ block('form_widget_simple') }}
190 {% endspaceless %}
191 {% endblock search_widget %}
192
193 {% block percent_widget %}
194 {% spaceless %}
195 {% set type = type|default('text') %}
196 {{ block('form_widget_simple') }} %
197 {% endspaceless %}
198 {% endblock percent_widget %}
199
200 {% block password_widget %}
201 {% spaceless %}
202 {% set type = type|default('password') %}
203 {{ block('form_widget_simple') }}
204 {% endspaceless %}
205 {% endblock password_widget %}
206
207 {% block hidden_widget %}
208 {% spaceless %}
209 {% set type = type|default('hidden') %}
210 {{ block('form_widget_simple') }}
211 {% endspaceless %}
212 {% endblock hidden_widget %}
213
214 {% block email_widget %}
215 {% spaceless %}
216 {% set type = type|default('email') %}
217 {{ block('form_widget_simple') }}
218 {% endspaceless %}
219 {% endblock email_widget %}
220
221 {% block button_widget %}
222 {% spaceless %}
223 {% if label is empty %}
224 {% set label = name|humanize %}
225 {% endif %}
226 <button type="{{ type|default('button') }}" {{ block('button_attributes') }}>{{ label|trans({}, translation_domain) }}</button>
227 {% endspaceless %}
228 {% endblock button_widget %}
229
230 {% block submit_widget %}
231 {% spaceless %}
232 {% set type = type|default('submit') %}
233 {{ block('button_widget') }}
234 {% endspaceless %}
235 {% endblock submit_widget %}
236
237 {% block reset_widget %}
238 {% spaceless %}
239 {% set type = type|default('reset') %}
240 {{ block('button_widget') }}
241 {% endspaceless %}
242 {% endblock reset_widget %}
243
244 {# Labels #}
245
246 {% block form_label %}
247 {% spaceless %}
248 {% if label is not sameas(false) %}
249 {% if not compound %}
250 {% set label_attr = label_attr|merge({'for': id}) %}
251 {% endif %}
252 {% if required %}
253 {% set label_attr = label_attr|merge({'class': (label_attr.class|default('') ~ ' required')|trim}) %}
254 {% endif %}
255 {% if label is empty %}
256 {% set label = name|humanize %}
257 {% endif %}
258 <label{% for attrname, attrvalue in label_attr %} {{ attrname }}="{{ attrvalue }}"{% endfor %}>{{ label|trans({}, translation_domain) }}</label>
259 {% endif %}
260 {% endspaceless %}
261 {% endblock form_label %}
262
263 {% block button_label %}{% endblock %}
264
265 {# Rows #}
266
267 {% block repeated_row %}
268 {% spaceless %}
269 {#
270 No need to render the errors here, as all errors are mapped
271 to the first child (see RepeatedTypeValidatorExtension).
272 #}
273 {{ block('form_rows') }}
274 {% endspaceless %}
275 {% endblock repeated_row %}
276
277 {% block form_row %}
278 {% spaceless %}
279 <div>
280 {{ form_label(form) }}
281 {{ form_errors(form) }}
282 {{ form_widget(form) }}
283 </div>
284 {% endspaceless %}
285 {% endblock form_row %}
286
287 {% block button_row %}
288 {% spaceless %}
289 <div>
290 {{ form_widget(form) }}
291 </div>
292 {% endspaceless %}
293 {% endblock button_row %}
294
295 {% block hidden_row %}
296 {{ form_widget(form) }}
297 {% endblock hidden_row %}
298
299 {# Misc #}
300
301 {% block form %}
302 {% spaceless %}
303 {{ form_start(form) }}
304 {{ form_widget(form) }}
305 {{ form_end(form) }}
306 {% endspaceless %}
307 {% endblock form %}
308
309 {% block form_start %}
310 {% spaceless %}
311 {% set method = method|upper %}
312 {% if method in ["GET", "POST"] %}
313 {% set form_method = method %}
314 {% else %}
315 {% set form_method = "POST" %}
316 {% endif %}
317 <form method="{{ form_method|lower }}" action="{{ action }}"{% for attrname, attrvalue in attr %} {{ attrname }}="{{ attrvalue }}"{% endfor %}{% if multipart %} enctype="multipart/form-data"{% endif %}>
318 {% if form_method != method %}
319 <input type="hidden" name="_method" value="{{ method }}" />
320 {% endif %}
321 {% endspaceless %}
322 {% endblock form_start %}
323
324 {% block form_end %}
325 {% spaceless %}
326 {% if not render_rest is defined or render_rest %}
327 {{ form_rest(form) }}
328 {% endif %}
329 </form>
330 {% endspaceless %}
331 {% endblock form_end %}
332
333 {% block form_enctype %}
334 {% spaceless %}
335 {% if multipart %}enctype="multipart/form-data"{% endif %}
336 {% endspaceless %}
337 {% endblock form_enctype %}
338
339 {% block form_errors %}
340 {% spaceless %}
341 {% if errors|length > 0 %}
342 <ul>
343 {% for error in errors %}
344 <li>{{ error.message }}</li>
345 {% endfor %}
346 </ul>
347 {% endif %}
348 {% endspaceless %}
349 {% endblock form_errors %}
350
351 {% block form_rest %}
352 {% spaceless %}
353 {% for child in form %}
354 {% if not child.rendered %}
355 {{ form_row(child) }}
356 {% endif %}
357 {% endfor %}
358 {% endspaceless %}
359 {% endblock form_rest %}
360
361 {# Support #}
362
363 {% block form_rows %}
364 {% spaceless %}
365 {% for child in form %}
366 {{ form_row(child) }}
367 {% endfor %}
368 {% endspaceless %}
369 {% endblock form_rows %}
370
371 {% block widget_attributes %}
372 {% spaceless %}
373 id="{{ id }}" name="{{ full_name }}"{% if read_only %} readonly="readonly"{% endif %}{% if disabled %} disabled="disabled"{% endif %}{% if required %} required="required"{% endif %}{% if max_length %} maxlength="{{ max_length }}"{% endif %}{% if pattern %} pattern="{{ pattern }}"{% endif %}
374 {% for attrname, attrvalue in attr %}{% if attrname in ['placeholder', 'title'] %}{{ attrname }}="{{ attrvalue|trans({}, translation_domain) }}" {% else %}{{ attrname }}="{{ attrvalue }}" {% endif %}{% endfor %}
375 {% endspaceless %}
376 {% endblock widget_attributes %}
377
378 {% block widget_container_attributes %}
379 {% spaceless %}
380 {% if id is not empty %}id="{{ id }}" {% endif %}
381 {% for attrname, attrvalue in attr %}{{ attrname }}="{{ attrvalue }}" {% endfor %}
382 {% endspaceless %}
383 {% endblock widget_container_attributes %}
384
385 {% block button_attributes %}
386 {% spaceless %}
387 id="{{ id }}" name="{{ full_name }}"{% if disabled %} disabled="disabled"{% endif %}
388 {% for attrname, attrvalue in attr %}{{ attrname }}="{{ attrvalue }}" {% endfor %}
389 {% endspaceless %}
390 {% endblock button_attributes %}