{% extends '@OroUI/actions/update.html.twig' %} {% form_theme form with ['@OroForm/Form/fields.html.twig'] %} {% import '@OroQueryDesigner/macros.html.twig' as QD %} {% import '@OroSegment/macros.html.twig' as segmentQD %} {% oro_title_set({params : {"%segment.name%": entity.name} }) %} {% set formAction = form.vars.value.id ? path('oro_segment_update', { 'id': form.vars.value.id }) : path('oro_segment_create') %} {% block head_script %} {{ parent() }} {% block stylesheets %} {{ form_stylesheet(form) }} {% endblock %} {% endblock %} {% block navButtons %} {% import '@OroUI/macros.html.twig' as UI %} {% if form.vars.value.id and is_granted('CREATE', form.vars.value) %} {{ UI.button({ 'path' : path('oro_segment_clone', {'id': form.vars.value.id}), 'iCss': 'fa-files-o', 'title': 'oro.segment.action.clone.button.title'|trans, 'label': 'oro.segment.action.clone.button.label'|trans, }) }} {% endif %} {% if form.vars.value.id and is_granted('DELETE', form.vars.value) %} {{ UI.deleteButton({ 'dataUrl': path('oro_api_delete_segment', {'id': form.vars.value.id}), 'dataRedirect': path('oro_segment_index'), 'aCss': 'no-hash remove-button', 'id': 'btn-remove-segment', 'dataId': form.vars.value.id, 'entity_label': 'oro.segment.entity_label'|trans }) }} {{ UI.buttonSeparator() }} {% endif %} {{ UI.cancelButton(path('oro_segment_index')) }} {% set html = UI.saveAndCloseButton({ 'route': 'oro_segment_view', 'params': {id: '$id'} }) %} {% if is_granted('oro_segment_create') %} {% set html = html ~ UI.saveAndNewButton({ 'route': 'oro_segment_create' }) %} {% endif %} {% if entity.id and is_granted('EDIT', entity) and entity.type.name == constant('Oro\\Bundle\\SegmentBundle\\Entity\\SegmentType::TYPE_STATIC') %} {% set html = html ~ UI.saveActionButton({ 'label': 'Save and refresh'|trans, 'route': 'oro_segment_refresh', 'params': {id: entity.id} }) %} {% endif %} {% if form.vars.value.id or is_granted('oro_segment_update') %} {% set html = html ~ UI.saveAndStayButton({ 'route': 'oro_segment_update', 'params': {id: '$id'} }) %} {% endif %} {{ UI.dropdownSaveButton({'html': html}) }} {% endblock %} {% block pageHeader %} {% if form.vars.value.id %} {% set breadcrumbs = { 'entity': form.vars.value, 'indexPath': path('oro_segment_index'), 'indexLabel': 'oro.segment.entity_plural_label'|trans, 'entityTitle': entity.name } %} {{ parent() }} {% else %} {% set title = 'oro.ui.create_entity'|trans({'%entityName%': 'oro.segment.entity_label'|trans}) %} {% include '@OroUI/page_title_block.html.twig' with { title: title } %} {% endif %} {% endblock pageHeader %} {% block content_data %} {% import '@OroUI/macros.html.twig' as UI %} {% set id = 'segment-profile' %} {% set ownerDataBlock = { 'dataBlocks': [{ 'subblocks': [{ 'data': [] }] }] } %} {% set ownerDataBlock = oro_form_process(ownerDataBlock, form) %} {% set dataBlocks = [{ 'title': 'General'|trans, 'class': 'active', 'subblocks': [ { 'title': '', 'data': [ form_row(form.name, {'label': 'oro.segment.name.label'}), form_row(form.description, { 'label': 'oro.segment.description.label', 'attr': { 'class': 'segment-descr' } }) ] }, { 'title': '', 'data': [ form_row(form.entity, {'label': 'oro.segment.entity.label'}), form_row(form.type, {'label': 'oro.segment.type.label'}), form_row(form.recordsLimit, {'label': 'oro.segment.records_limit.label'}) ] | merge(ownerDataBlock.dataBlocks[0].subblocks[0].data) } ] }] %} {% set type = 'oro_segment' %} {% set dataBlocks = dataBlocks|merge( [{ 'title' : 'oro.segment.form.designer'|trans, 'content_attr': {'id': type ~ '-designer'}, 'subblocks': [ { 'title': 'oro.segment.form.columns'|trans, 'spanClass': type ~ '-columns responsive-cell', 'data': [ QD.query_designer_column_form( form.column, {'id': type ~ '-column-form'}, {}, ['column', 'label', 'sorting', 'action'] ), QD.query_designer_column_list( {'id': type ~ '-column-list', 'rowId': type ~ '-column-row'}, ['column', 'label', 'sorting', 'action'] ), ] }, { 'title': 'oro.segment.form.filters'|trans, 'spanClass': type ~ '-filters responsive-cell', 'data': [ segmentQD.query_designer_condition_builder({ 'id': type ~ '-condition-builder', 'currentSegmentId': entity.id|default(null), 'page_limit': constant('\\Oro\\Bundle\\SegmentBundle\\Entity\\Manager\\SegmentManager::PER_PAGE'), 'metadata': metadata, 'fieldConditionOptions': form.vars.field_condition_options }) ] }, ] }] ) %} {% set dataBlocks = dataBlocks|merge(oro_form_additional_data(form, 'Additional'|trans)) %} {% set data = { 'formErrors': form_errors(form)? form_errors(form) : null, 'dataBlocks': dataBlocks, 'hiddenData': form_widget(form.definition) } %} {{ UI.scrollData(id, data, entity, form) }} {{ QD.query_designer_column_chain_template('column-chain-template') }} {{ segmentQD.initJsWidgets(type, form, entities, metadata) }} {% endblock content_data %}