{% use "bootstrap_base_layout.html.twig" %} {# Widgets #} {% block money_widget -%} {% if not valid %} {% set group_class = ' form-control is-invalid' %} {% set valid = true %} {% endif %} {{- parent() -}} {%- endblock money_widget %} {% block datetime_widget -%} {%- if widget != 'single_text' and not valid -%} {% set attr = attr|merge({class: (attr.class|default('') ~ ' form-control is-invalid')|trim}) -%} {% set valid = true %} {%- endif -%} {{- parent() -}} {%- endblock datetime_widget %} {% block date_widget -%} {%- if widget != 'single_text' and not valid -%} {% set attr = attr|merge({class: (attr.class|default('') ~ ' form-control is-invalid')|trim}) -%} {% set valid = true %} {%- endif -%} {{- parent() -}} {%- endblock date_widget %} {% block time_widget -%} {%- if widget != 'single_text' and not valid -%} {% set attr = attr|merge({class: (attr.class|default('') ~ ' form-control is-invalid')|trim}) -%} {% set valid = true %} {%- endif -%} {{- parent() -}} {%- endblock time_widget %} {% block dateinterval_widget -%} {%- if widget != 'single_text' and not valid -%} {% set attr = attr|merge({class: (attr.class|default('') ~ ' form-control is-invalid')|trim}) -%} {% set valid = true %} {%- endif -%} {{- parent() -}} {%- endblock dateinterval_widget %} {% block percent_widget -%}
{% set valid = true %} {{- block('form_widget_simple') -}} %
{%- endblock percent_widget %} {% block form_widget_simple -%} {% if type is not defined or type != 'hidden' %} {%- set attr = attr|merge({class: (attr.class|default('') ~ ' form-control' ~ (type|default('') == 'file' ? '-file' : ''))|trim}) -%} {% endif %} {{- parent() -}} {%- endblock form_widget_simple %} {%- block widget_attributes -%} {%- if not valid %} {% set attr = attr|merge({class: (attr.class|default('') ~ ' form-control is-invalid')|trim}) %} {% endif -%} {{ parent() }} {%- endblock widget_attributes -%} {% block button_widget -%} {%- set attr = attr|merge({class: (attr.class|default('btn-secondary') ~ ' btn')|trim}) -%} {{- parent() -}} {%- endblock button_widget %} {% block checkbox_widget -%} {%- set parent_label_class = parent_label_class|default(label_attr.class|default('')) -%} {%- set attr = attr|merge({class: (attr.class|default('') ~ ' form-check-input')|trim}) -%} {% if 'checkbox-inline' in parent_label_class %} {{- form_label(form, null, { widget: parent() }) -}} {% else -%}
{{- form_label(form, null, { widget: parent() }) -}}
{%- endif -%} {%- endblock checkbox_widget %} {% block radio_widget -%} {%- set parent_label_class = parent_label_class|default(label_attr.class|default('')) -%} {%- set attr = attr|merge({class: (attr.class|default('') ~ ' form-check-input')|trim}) -%} {%- if 'radio-inline' in parent_label_class -%} {{- form_label(form, null, { widget: parent() }) -}} {%- else -%}
{{- form_label(form, null, { widget: parent() }) -}}
{%- endif -%} {%- endblock radio_widget %} {% block choice_widget_expanded -%} {% if '-inline' in label_attr.class|default('') -%} {%- for child in form %} {{- form_widget(child, { parent_label_class: label_attr.class|default(''), translation_domain: choice_translation_domain, valid: valid, }) -}} {% endfor -%} {%- else -%} {%- if not valid -%} {%- set attr = attr|merge({class: (attr.class|default('') ~ ' form-control is-invalid')|trim}) %} {%- endif -%}
{%- for child in form %} {{- form_widget(child, { parent_label_class: label_attr.class|default(''), translation_domain: choice_translation_domain, valid: true, }) -}} {% endfor -%}
{%- endif %} {%- endblock choice_widget_expanded %} {# Labels #} {% block form_label -%} {%- if compound is defined and compound -%} {%- set element = 'legend' -%} {%- set label_attr = label_attr|merge({class: (label_attr.class|default('') ~ ' col-form-legend')|trim}) -%} {%- else -%} {%- set label_attr = label_attr|merge({class: (label_attr.class|default('') ~ ' form-control-label')|trim}) -%} {%- endif -%} {{- parent() -}} {%- endblock form_label %} {% block checkbox_radio_label -%} {#- Do not display the label if widget is not defined in order to prevent double label rendering -#} {%- if widget is defined -%} {%- set label_attr = label_attr|merge({class: (label_attr.class|default('') ~ ' form-check-label')|trim}) -%} {%- if required -%} {%- set label_attr = label_attr|merge({class: (label_attr.class|default('') ~ ' required')|trim}) -%} {%- endif -%} {%- if parent_label_class is defined -%} {%- set label_attr = label_attr|merge({class: (label_attr.class|default('') ~ ' ' ~ parent_label_class)|trim}) -%} {%- endif -%} {%- if label is not same as(false) and label is empty -%} {%- if label_format is not empty -%} {%- set label = label_format|replace({ '%name%': name, '%id%': id, }) -%} {%- else -%} {%- set label = name|humanize -%} {%- endif -%} {%- endif -%} {{- widget|raw }} {{ label is not same as(false) ? (translation_domain is same as(false) ? label : label|trans({}, translation_domain)) -}} {%- endif -%} {%- endblock checkbox_radio_label %} {# Rows #} {% block form_row -%} {%- if compound is defined and compound -%} {%- set element = 'fieldset' -%} {%- endif -%} <{{ element|default('div') }} class="form-group"> {{- form_label(form) -}} {{- form_widget(form) -}} {{- form_errors(form) -}} {%- endblock form_row %} {# Errors #} {% block form_errors -%} {%- if errors|length > 0 -%}
{%- endif %} {%- endblock form_errors %}