{% import 'macros/form.html' as form %} {% macro filtersInputs(name, selectName, inputName, label='', options='', error='', filters={}, classes=[], attrs={}, is_required=false) %} {% set classes = (classes|list) %} {% do classes.append('control-select') %} {%- set extra_html = caller() if caller -%} {% call form.input_block(id or name, label or name, error, classes, extra_html=extra_html, is_required=is_required) %}
{% for field in filters %} {% for value in filters[field] %} {{ selectAndInput(selectName, inputName, selectOptions=options, selected=field, inputValue=value, attrs=attrs) }} {% endfor %} {% endfor %}
{{ _('Add Filter') }} {% endcall %} {% endmacro %} {% macro selectAndInput(selectName, inputName, selectOptions='', selected='', inputValue='', attrs={}) %}
{% endmacro %} {% set fields = h.resource_view_get_fields(resource) %} {% set templateFilterInputs = selectAndInput('filter_fields', 'filter_values', selectOptions=fields) %} {% set filters = resource_view['filters'] %}
{{ filtersInputs('filters', 'filter_fields', 'filter_values', label=_('Filters'), options=fields, filters=filters, classes=["control-filters"]) }}