{% block form_row %}
{{ form_label(form) }} {{ form_widget(form) }} {{ form_errors(form) }}
{% endblock form_row %} {% block form_label %} {% if label is not same as(false) %} {% 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 translation_domain is same as(false) or translation_domain is null %} {{ label }} {% else %} {{ label|trans({}, translation_domain) }} {% endif %} {% if required %}*{% endif %} {% endif %} {% endblock form_label %} {% block form_widget_simple %} {% set type = type|default('text') %} {% endblock form_widget_simple %} {% block textarea_widget %} {% endblock textarea_widget %} {% block choice_widget_collapsed %} {% if required and placeholder is none and not placeholder_in_choices and not multiple and (attr.size is not defined or attr.size <= 1) %} {% set required = false %} {% endif %} {% if multiple %} {# Custom Multi-Select für Tags und Material #}
Keine Auswahl
{# Echtes hidden select für Symfony #} {% else %} {# Normales Single-Select #} {# Vereinfachte Bedingung: Prüfe ob es ein Material-Feld ist #} {# Prüfe ob full_name oder id "material" enthält (aber nicht "materialien" außer im Kontext von auftragMaterialien) #} {% set isMaterialField = false %} {# Prüfe verschiedene Patterns für Material-Felder - sehr breite Bedingung #} {% if full_name matches '/.*\\[material\\].*/' or id matches '/.*\\[material\\].*/' %} {% set isMaterialField = true %} {% elseif id ends with '_material' %} {% set isMaterialField = true %} {% elseif id matches '/.*material[^i]/' or id matches '/.*material$/' %} {# Prüfe ob es NICHT "materialien" ist (außer im Kontext von auftragMaterialien) #} {% if not (id matches '/.*materialien/' and not (id matches '/.*auftragMaterialien/' or full_name matches '/.*auftragMaterialien/')) %} {% set isMaterialField = true %} {% endif %} {% elseif id matches '/.*auftragMaterialien.*material/' or id matches '/.*auftrag.*materialien.*material/' or id matches '/.*auftrag_auftragMaterialien.*material/' %} {% set isMaterialField = true %} {% elseif full_name matches '/.*auftragMaterialien.*\\[material\\].*/' %} {% set isMaterialField = true %} {% elseif id matches '/.*auftrag_auftragMaterialien.*material/' %} {% set isMaterialField = true %} {% endif %}
{% if isMaterialField %} {# Debug: Zeige ID wenn Material-Feld erkannt wurde #} {# DEBUG: ID={{ id }}, FullName={{ full_name }}, isMaterialField={{ isMaterialField ? 'true' : 'false' }} #} {% endif %}
{% endif %} {% endblock choice_widget_collapsed %} {% block choice_widget_options %} {% for group_label, choice in options %} {%- if choice is iterable and choice is not empty -%} {% set options = choice %} {{- block('choice_widget_options') -}} {%- else -%} {%- endif -%} {% endfor %} {% endblock choice_widget_options %} {% block money_widget %}
{{ money_pattern|replace({ '{{ widget }}': '' })|trim }}
{% endblock money_widget %} {% block date_widget %} {% 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 %} {% endblock date_widget %} {% block repeated_row %}
{{ form_label(form.first) }} {{ form_widget(form.first) }} {{ form_errors(form.first) }}
{{ form_label(form.second) }} {{ form_widget(form.second) }} {{ form_errors(form.second) }}
{% endblock repeated_row %} {% block color_widget %}
{% endblock color_widget %} {% block form_errors %} {%- if errors|length > 0 -%} {%- endif -%} {% endblock form_errors %}