diff --git a/templates/web/login/common/form_div_layout.html.twig b/templates/web/login/common/form_div_layout.html.twig index bebcf980ba..5e420e7778 100644 --- a/templates/web/login/common/form_div_layout.html.twig +++ b/templates/web/login/common/form_div_layout.html.twig @@ -1,11 +1,326 @@ -{% extends "form_div_layout.html.twig" %} - {% import "login/common/macros.html.twig" as auth_macro %} -{% block form_errors %} - {% spaceless %} - {% if errors|length > 0 %} - {{ auth_macro.fieldError(errors) }} +{# Widgets #} + +{% block form_widget %} +{% spaceless %} + {% if compound %} + {{ block('form_widget_compound') }} + {% else %} + {{ block('form_widget_simple') }} + {% endif %} +{% endspaceless %} +{% endblock form_widget %} + +{% block form_widget_simple %} +{% spaceless %} + {% set type = type|default('text') %} + +{% endspaceless %} +{% endblock form_widget_simple %} + +{% block form_widget_compound %} +{% spaceless %} +
+ {% if form.parent is empty %} + {{ form_errors(form) }} {% endif %} - {% endspaceless %} + {{ block('form_rows') }} + {{ form_rest(form) }} +
+{% endspaceless %} +{% endblock form_widget_compound %} + +{% block collection_widget %} +{% spaceless %} + {% if prototype is defined %} + {% set attr = attr|merge({'data-prototype': form_row(prototype) }) %} + {% endif %} + {{ block('form_widget') }} +{% endspaceless %} +{% endblock collection_widget %} + +{% block textarea_widget %} +{% spaceless %} + +{% endspaceless %} +{% endblock textarea_widget %} + +{% block choice_widget %} +{% spaceless %} + {% if expanded %} + {{ block('choice_widget_expanded') }} + {% else %} + {{ block('choice_widget_collapsed') }} + {% endif %} +{% endspaceless %} +{% endblock choice_widget %} + +{% block choice_widget_expanded %} +{% spaceless %} +
+ {% for child in form %} + {{ form_widget(child) }} + {{ form_label(child) }} + {% endfor %} +
+{% endspaceless %} +{% endblock choice_widget_expanded %} + +{% block choice_widget_collapsed %} +{% spaceless %} + +{% endspaceless %} +{% endblock choice_widget_collapsed %} + +{% block choice_widget_options %} +{% spaceless %} + {% for group_label, choice in options %} + {% if choice is iterable %} + + {% set options = choice %} + {{ block('choice_widget_options') }} + + {% else %} + + {% endif %} + {% endfor %} +{% endspaceless %} +{% endblock choice_widget_options %} + +{% block checkbox_widget %} +{% spaceless %} + +{% endspaceless %} +{% endblock checkbox_widget %} + +{% block radio_widget %} +{% spaceless %} + +{% endspaceless %} +{% endblock radio_widget %} + +{% block datetime_widget %} +{% spaceless %} + {% if widget == 'single_text' %} + {{ block('form_widget_simple') }} + {% else %} +
+ {{ form_errors(form.date) }} + {{ form_errors(form.time) }} + {{ form_widget(form.date) }} + {{ form_widget(form.time) }} +
+ {% endif %} +{% endspaceless %} +{% endblock datetime_widget %} + +{% block date_widget %} +{% spaceless %} + {% if widget == 'single_text' %} + {{ block('form_widget_simple') }} + {% else %} +
+ {{ date_pattern|replace({ + '{{ year }}': form_widget(form.year), + '{{ month }}': form_widget(form.month), + '{{ day }}': form_widget(form.day), + })|raw }} +
+ {% endif %} +{% endspaceless %} +{% endblock date_widget %} + +{% block time_widget %} +{% spaceless %} + {% if widget == 'single_text' %} + {{ block('form_widget_simple') }} + {% else %} + {% set vars = widget == 'text' ? { 'attr': { 'size': 1 }} : {} %} +
+ {{ form_widget(form.hour, vars) }}:{{ form_widget(form.minute, vars) }}{% if with_seconds %}:{{ form_widget(form.second, vars) }}{% endif %} +
+ {% endif %} +{% endspaceless %} +{% endblock time_widget %} + +{% block number_widget %} +{% spaceless %} + {# type="number" doesn't work with floats #} + {% set type = type|default('text') %} + {{ block('form_widget_simple') }} +{% endspaceless %} +{% endblock number_widget %} + +{% block integer_widget %} +{% spaceless %} + {% set type = type|default('number') %} + {{ block('form_widget_simple') }} +{% endspaceless %} +{% endblock integer_widget %} + +{% block money_widget %} +{% spaceless %} + {{ money_pattern|replace({ '{{ widget }}': block('form_widget_simple') })|raw }} +{% endspaceless %} +{% endblock money_widget %} + +{% block url_widget %} +{% spaceless %} + {% set type = type|default('url') %} + {{ block('form_widget_simple') }} +{% endspaceless %} +{% endblock url_widget %} + +{% block search_widget %} +{% spaceless %} + {% set type = type|default('search') %} + {{ block('form_widget_simple') }} +{% endspaceless %} +{% endblock search_widget %} + +{% block percent_widget %} +{% spaceless %} + {% set type = type|default('text') %} + {{ block('form_widget_simple') }} % +{% endspaceless %} +{% endblock percent_widget %} + +{% block password_widget %} +{% spaceless %} + {% set type = type|default('password') %} + {{ block('form_widget_simple') }} +{% endspaceless %} +{% endblock password_widget %} + +{% block hidden_widget %} +{% spaceless %} + {% set type = type|default('hidden') %} + {{ block('form_widget_simple') }} +{% endspaceless %} +{% endblock hidden_widget %} + +{% block email_widget %} +{% spaceless %} + {% set type = type|default('email') %} + {{ block('form_widget_simple') }} +{% endspaceless %} +{% endblock email_widget %} + +{# Labels #} + +{% block form_label %} +{% spaceless %} + {% if not compound %} + {% set label_attr = label_attr|merge({'for': id}) %} + {% endif %} + {% if required %} + {% set label_attr = label_attr|merge({'class': (label_attr.class|default('') ~ ' required')|trim}) %} + {% endif %} + {% if label is empty %} + {% set label = name|humanize %} + {% endif %} + {{ label }}{% if required %}*{% endif %} +{% endspaceless %} +{% endblock form_label %} + +{# Rows #} + +{% block repeated_row %} +{% spaceless %} + {# + No need to render the errors here, as all errors are mapped + to the first child (see RepeatedTypeValidatorExtension). + #} + {{ block('form_rows') }} +{% endspaceless %} +{% endblock repeated_row %} + +{% block form_row %} +{% spaceless %} +
+ {{ form_label(form) }} + {{ form_errors(form) }} + {{ form_widget(form) }} +
+{% endspaceless %} +{% endblock form_row %} + +{% block hidden_row %} + {{ form_widget(form) }} +{% endblock hidden_row %} + +{# Misc #} + +{% block form_enctype %} +{% spaceless %} + {% if multipart %}enctype="multipart/form-data"{% endif %} +{% endspaceless %} +{% endblock form_enctype %} + +{% block form_errors %} +{% spaceless %} + {% if errors|length > 0 %} + {{ auth_macro.fieldError(errors) }} + {% endif %} +{% endspaceless %} {% endblock form_errors %} + +{% block form_rest %} +{% spaceless %} + {% for child in form %} + {% if not child.rendered %} + {{ form_row(child) }} + {% endif %} + {% endfor %} +{% endspaceless %} +{% endblock form_rest %} + +{# Support #} + +{% block form_rows %} +{% spaceless %} + {% for child in form %} + {{ form_row(child) }} + {% endfor %} +{% endspaceless %} +{% endblock form_rows %} + +{% block widget_attributes %} +{% spaceless %} + id="{{ id }}" name="{{ 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 %} + {% for attrname, attrvalue in attr %}{% if attrname in ['placeholder', 'title'] %}{{ attrname }}="{{ attrvalue }}" {% else %}{{ attrname }}="{{ attrvalue }}" {% endif %}{% endfor %} +{% endspaceless %} +{% endblock widget_attributes %} + +{% block widget_container_attributes %} +{% spaceless %} + {% if id is not empty %}id="{{ id }}" {% endif %} + {% for attrname, attrvalue in attr %}{{ attrname }}="{{ attrvalue }}" {% endfor %} +{% endspaceless %} +{% endblock widget_container_attributes %} + +{# Deprecated in Symfony 2.1, to be removed in 2.3 #} + +{% block generic_label %}{{ block('form_label') }}{% endblock %} +{% block widget_choice_options %}{{ block('choice_widget_options') }}{% endblock %} +{% block field_widget %}{{ block('form_widget_simple') }}{% endblock %} +{% block field_label %}{{ block('form_label') }}{% endblock %} +{% block field_row %}{{ block('form_row') }}{% endblock %} +{% block field_enctype %}{{ block('form_enctype') }}{% endblock %} +{% block field_errors %}{{ block('form_errors') }}{% endblock %} +{% block field_rest %}{{ block('form_rest') }}{% endblock %} +{% block field_rows %}{{ block('form_rows') }}{% endblock %} \ No newline at end of file