|
114 | 114 | </div>
|
115 | 115 | {%- endblock percent_widget %}
|
116 | 116 |
|
| 117 | +{% block file_widget -%} |
| 118 | + <div class="form-group"> |
| 119 | + <{{ element|default('div') }} class="custom-file"> |
| 120 | + {%- set type = type|default('file') -%} |
| 121 | + {{- block('form_widget_simple') -}} |
| 122 | + <label for="{{ form.vars.id }}" class="custom-file-label"> |
| 123 | + {%- if attr.placeholder is defined -%} |
| 124 | + {{- translation_domain is same as(false) ? attr.placeholder : attr.placeholder|trans({}, translation_domain) -}} |
| 125 | + {%- endif -%} |
| 126 | + </label> |
| 127 | + </{{ element|default('div') }}> |
| 128 | + </div> |
| 129 | +{% endblock %} |
| 130 | + |
117 | 131 | {% block form_widget_simple -%}
|
118 | 132 | {% if type is not defined or type != 'hidden' %}
|
119 | 133 | {%- set attr = attr|merge({class: (attr.class|default('') ~ (type|default('') == 'file' ? ' custom-file-input' : ' form-control'))|trim}) -%}
|
|
186 | 200 | {%- if compound is defined and compound -%}
|
187 | 201 | {%- set element = 'legend' -%}
|
188 | 202 | {%- set label_attr = label_attr|merge({class: (label_attr.class|default('') ~ ' col-form-label')|trim}) -%}
|
189 |
| - {% elseif type is defined and type == 'file' %} |
190 |
| - {%- set label_attr = label_attr|merge({for: id, class: (label_attr.class|default('') ~ ' custom-file-label')|trim}) -%} |
191 | 203 | {%- else -%}
|
192 | 204 | {%- set label_attr = label_attr|merge({for: id}) -%}
|
193 | 205 | {%- endif -%}
|
|
269 | 281 | </{{ element|default('div') }}>
|
270 | 282 | {%- endblock form_row %}
|
271 | 283 |
|
272 |
| -{% block file_row -%} |
273 |
| - <div class="form-group"> |
274 |
| - <{{ element|default('div') }} class="custom-file"> |
275 |
| - {{- form_widget(form) -}} |
276 |
| - {{- form_label(form) -}} |
277 |
| - </{{ element|default('div') }}> |
278 |
| - </div> |
279 |
| -{% endblock %} |
280 |
| - |
281 | 284 | {# Errors #}
|
282 | 285 |
|
283 | 286 | {% block form_errors -%}
|
|
0 commit comments