{# @var ea \EasyCorp\Bundle\EasyAdminBundle\Context\AdminContext #} {# @var entities \EasyCorp\Bundle\EasyAdminBundle\Collection\EntityDtoCollection #} {# @var paginator \EasyCorp\Bundle\EasyAdminBundle\Orm\EntityPaginator #} {% extends ea.templatePath('layout') %} {% trans_default_domain ea.i18n.translationDomain %} {% block body_id entities|length > 0 ? 'ea-index-' ~ entities|first.name : '' %} {% block body_class 'index' ~ (entities|length > 0 ? ' index-' ~ entities|first.name : '') %} {% block content_title %} {{ 'sort'|sov_trans_admin_title(ea.getEntity().getFqcn()) }} {% endblock %} {% block content_breadcrumb %} {{ include('@LcSov/adminlte/block/breadcrumb.html.twig') }} {% endblock content_breadcrumb %} {% set has_batch_actions = batch_actions|length > 0 %} {% block page_actions %}{% endblock page_actions %} {% block main %} {# sort can be multiple; let's consider the sorting field the first one #} {% set sort_field_name = app.request.get('sort')|keys|first %} {% set sort_order = app.request.get('sort')|first %} {% set some_results_are_hidden = false %} {% set has_footer = entities|length != 0 %} {% set has_search = ea.crud.isSearchEnabled %} {% set has_filters = filters|length > 0 %} {% set has_datagrid_tools = has_search or has_filters %} {{ form_start(sortable_form) }} {% embed '@LcSov/adminlte/embed/card.html.twig' %} {% block class %}card-table card-outline card-primary{% endblock %} {% block header %} <span data-toggle="tooltip" class="badge badge-light" data-original-title="Total" title="Total"> {{ paginator.numResults }} résultats </span> <div class="btn-list float-sm-right"> <a href=" {{ ea_url({crudAction: 'index'}).generateUrl() }}" class="btn btn-sm btn-info"> <i class="fa fa-chevron-left"></i> Retour à la liste </a> </div> {% endblock %} {% block body %} <div class="table-responsive"> <table class="table table-bordered table-hover table-striped sov-sortable" data-parent-position="{{ entity is defined and entity is not null ? entity.position : '' }}"> <thead> {% block table_head %} <tr> <th></th> {% for field in fields ?? [] %} {% set field = field.getAsDto() %} {% if field.isDisplayedOn('index') %} {% set is_sorting_field = ea.search.isSortingField(field.property) %} <th class="{{ is_sorting_field ? 'sorted' }} {{ field.isVirtual ? 'field-virtual' }} {% if field.textAlign %}text-{{ field.textAlign }}{% endif %}" dir="{{ ea.i18n.textDirection }}"> <span>{{ field.label ? field.label|raw : field.getProperty|raw }}</span> </th> {% endif %} {% endfor %} </tr> {% endblock table_head %} </thead> <tbody> {% block table_body %} {% for entity in entities %} {% if not entity.isAccessible %} {% set some_results_are_hidden = true %} {% else %} <tr class="sov-draggable" data-id="{{ entity.primaryKeyValueAsString }}"> <td> <i class="fa fa-fw fa-sort"></i> </td> {% for field in entity.fields %} {% if field.isDisplayedOn('index') %} <td class="{{ field.property == sort_field_name ? 'sorted' }} text-{{ field.textAlign }} {{ field.cssClass }}" dir="{{ ea.i18n.textDirection }}"> {{ include(field.templatePath, { field: field, entity: entity }, with_context = false) }} </td> {% endif %} {% endfor %} </tr> {% endif %} {% else %} <tr> <td class="no-results" colspan="100"> {{ 'datagrid.no_results'|trans(ea.i18n.translationParameters, 'EasyAdminBundle') }} </td> </tr> {% endfor %} {% if some_results_are_hidden %} <tr class="datagrid-row-empty"> <td class="text-center" colspan="{{ entities|first.fields|length + 1 }}"> <span class="datagrid-row-empty-message"><i class="fa fa-lock mr-1"></i> {{ 'datagrid.hidden_results'|trans({}, 'EasyAdminBundle') }}</span> </td> </tr> {% endif %} {% endblock table_body %} </tbody> </table> <div style="display: none;"> {{ form_row(sortable_form.entities) }} {{ form_rest(sortable_form) }} </div> </div> {% endblock %} {% block footer %} <div class="form-actions"> <div class="button-action"> {# <a class=" {{ _action.css_class|default('') }}" href="{{ path('easyadmin', _request_parameters|merge({ action: _action.name })) }}" target="{{ _action.target }}"> {{ _action.label is defined and not _action.label is empty ? _action.label|trans(_trans_parameters) }} </a> #} <button type="submit" class="btn btn-primary float-right"> Sauvegarder</button> </div> </div> {% endblock %} {% endembed %} {{ form_end(sortable_form) }} {% endblock main %}