{% macro query_designer_condition_builder(params) %} {% set params = { column_chain_template_selector: '#column-chain-template', field_choice_filter_preset: 'querydesigner', }|merge(params) %} {% set fieldConditionModule = params.fieldConditionModule|default('oroquerydesigner/js/app/views/field-condition-view') %} {% set fieldConditionOptions = { filters: params.metadata.filters|default([]), hierarchy: params.metadata.hierarchy|default({}), fieldChoice: { filterPreset: params.field_choice_filter_preset, select2: { placeholder: 'oro.query_designer.condition_builder.choose_entity_field'|trans, formatSelectionTemplateSelector: params.column_chain_template_selector|default(null), }, }, }|merge_recursive(params.fieldConditionOptions|default({})) %} {% set conditionBuilderOptions = { fieldsRelatedCriteria: ['condition-item'] }|merge_recursive(params.conditionBuilderOptions|default({})) %}
  • {{ 'oro.query_designer.condition_builder.criteria.field_condition'|trans }}
  • {{ 'oro.query_designer.condition_builder.criteria.conditions_group'|trans }}
{{ 'oro.query_designer.condition_builder.drag_n_drop_hint'|trans }}
{% endmacro %} {% macro query_designer_column_list(attr, showItems = ['column', 'label', 'function', 'sorting', 'action']) %} {% import '@OroUI/macros.html.twig' as UI %} {% import _self as queryDesignerMacros %} {% set attr = attr|default({})|merge({'class': (attr.class|default('') ~ ' grid-container query-designer-grid-container query-designer-columns-grid-container')|trim}) %} {% if ('column' in showItems) %} {% endif %} {% if ('label' in showItems) %} {% endif %} {% if ('function' in showItems) %} {% endif %} {% if ('sorting' in showItems) %} {% endif %} {% if ('action' in showItems) %} {% endif %}
{{ 'oro.query_designer.datagrid.column.column'|trans }}{{ 'oro.query_designer.datagrid.column.label'|trans }}{{ 'oro.query_designer.datagrid.column.function'|trans }}{{ 'oro.query_designer.datagrid.column.sorting'|trans }}{{ 'oro.query_designer.datagrid.column.actions'|trans }}
{{ queryDesignerMacros.query_designer_column_template(attr.rowId, showItems) }} {% endmacro %} {% macro query_designer_grouping_list(attr) %} {% import '@OroUI/macros.html.twig' as UI %} {% set attr = attr|default({})|merge({'class': (attr.class|default('') ~ ' grid-container query-designer-grid-container query-designer-columns-grid-container')|trim}) %}
{{ 'oro.query_designer.datagrid.column.column'|trans }} {{ 'oro.query_designer.datagrid.column.actions'|trans }}
{% endmacro %} {% macro query_designer_column_template(id, showItems = ['column', 'label', 'function', 'sorting', 'action']) %} {% endmacro %} {% macro query_designer_grouping_item_template(id) %} {% endmacro %} {% macro query_designer_column_form(form, attr, params, showItems = ['column', 'label', 'function', 'sorting', 'action']) %} {% import '@OroUI/macros.html.twig' as UI %} {% set attr = attr|default({})|merge({ 'class': (attr.class|default('') ~ ' query-designer-form')|trim }) %}
{# @todo we have to directly set 'data-validation' because JsValidationExtension does not support validation groups #} {% if ('column' in showItems) %} {{ form_row(form.name, { 'label': 'oro.query_designer.form.column', 'attr': { 'data-purpose': 'column-selector', 'data-validation': { NotBlank: null }|json_encode } }) }} {% endif %} {# @todo we have to directly set 'data-validation' because JsValidationExtension does not support validation groups #} {% if ('label' in showItems) %} {{ form_row(form.label, { 'label': 'oro.query_designer.form.label', 'attr': { 'class': 'label-text', 'data-purpose': 'label', 'data-validation': { NotBlank: null }|json_encode } }) }} {% endif %} {% if ('function' in showItems) %} {{ form_row(form.func, { 'label': 'oro.query_designer.form.function', 'attr': { 'class': 'function-selector', 'data-purpose': 'function-selector' } }) }} {% endif %} {% if ('sorting' in showItems) %} {{ form_row(form.sorting, { 'label': 'oro.query_designer.form.sorting', 'attr': { 'class': 'sorting-selector', 'data-purpose': 'sorting-selector' } }) }} {% endif %} {% if ('action' in showItems) %}
{% apply spaceless %} {{ UI.clientButton({ 'aCss': 'no-hash cancel-button column-form-button', 'label' : 'oro.query_designer.form.action.cancel'|trans }) }} {{ UI.clientButton({ 'visible': false, 'aCss': 'no-hash btn-success save-button column-form-button', 'label' : 'oro.query_designer.form.action.save'|trans }) }} {{ UI.clientButton({ 'visible': false, 'aCss': 'no-hash btn-primary add-button column-form-button', 'label' : 'oro.query_designer.form.action.add'|trans }) }} {% endapply %}
{% endif %}
{% endmacro %} {% macro query_designer_grouping_form(form, attr, params) %} {% import '@OroUI/macros.html.twig' as UI %} {% set attr = attr|default({})|merge({'class': (attr.class|default('') ~ ' query-designer-grouping-form query-designer-form')|trim}) %}
{# @todo own formtype for this kind field based on hidden input #} {# @todo we have to directly set 'data-validation' because JsValidationExtension does not support validation groups #} {{ form_row(form.columnNames, { 'label': 'oro.query_designer.form.grouping_columns', 'attr': { 'data-purpose': 'column-selector', 'data-validation': { NotBlank: null }|json_encode } }) }}
{% apply spaceless %} {{ UI.clientButton({ 'aCss': 'no-hash cancel-button', 'label' : 'oro.query_designer.form.action.cancel'|trans }) }} {{ UI.clientButton({ 'visible': false, 'aCss': 'no-hash btn-success save-button', 'label' : 'oro.query_designer.form.action.save'|trans }) }} {{ UI.clientButton({ 'visible': false, 'aCss': 'no-hash btn-primary add-button', 'label' : 'oro.query_designer.form.action.add'|trans }) }} {% endapply %}
{% endmacro %} {% macro query_designer_date_grouping_form(form, params) %} {% import '@OroUI/macros.html.twig' as UI %} {% set attr = attr|default({})|merge({'class': (attr.class|default('') ~ ' query-designer-grouping-form clearfix')|trim}) %} {{ form_row(form.useDateGroupFilter) }} {{ form_row(form.fieldName, { 'attr': { 'data-purpose': 'date-grouping-selector' } }) }} {{form_row(form.useSkipEmptyPeriodsFilter)}} {% endmacro %} {% macro query_designer_column_chain_template(id) %} {% apply spaceless %} {% endapply %} {% endmacro %}