Files
2023-12-13 13:57:25 +01:00

58 lines
1.9 KiB
Twig

{% extends '@bolt/_partials/fields/_base.html.twig' %}
{# On top of the attributes that get set/defined in `_base.html.twig`,
The Select fields has three additional attributes:
- options: The actual options that are available in the select
- multiple: A boolean to set whether or not we allow multiple selections
#}
{% block label %}
{% if not hideLabel|default(false) %}
{{ parent() }}
{% endif %}
{% endblock %}
{% set fetchUrl = '' %}
{% if field is defined
and field.definition.get('values') is not iterable
and field.definition.get('lazy')|default(false) %}
{% set options = [] %}
{% set fetchUrl = select_options_url(field) %}
{% endif %}
{% if options is not defined %}
{% set options = select_options(field) %}
{% endif %}
{% if multiple is not defined %}
{% set multiple = field.definition.get('multiple')|default ? 'true' : 'false' %}
{% endif %}
{% if autocomplete is not defined %}
{% set autocomplete = field.definition.get('autocomplete')|default ? 'true' : 'false' %}
{% endif %}
{% set limit = config.get('general/maximum_listing_select', 2000) %}
{% if field.definition.get('limit') is defined and field.definition.get('limit') is not empty %}
{% set limit = field.definition.get('limit') %}
{% endif %}
{% block field %}
<editor-select
:classname="{{ ['wide-options ', class]|join|json_encode }}"
:value="{{ value|json_encode }}"
:name='{{ name|json_encode }}'
:id='{{ id|json_encode }}'
:options="{{ options|json_encode }}"
:optionslimit="{{ limit }}"
:form='{{ form|json_encode }}'
:multiple="{{ multiple }}"
:autocomplete="{{ autocomplete }}"
:readonly="{{ readonly|json_encode }}"
:errormessage='{{ errormessage|json_encode }}'
:required='{{ required|json_encode }}'
:fetchurl='{{ fetchUrl|json_encode }}'
></editor-select>
{% endblock %}