base_list_field.html.twig 1.8 KB

1234567891011121314151617181920212223242526272829303132333435
  1. {#
  2. This file is part of the Sonata package.
  3. (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
  4. For the full copyright and license information, please view the LICENSE
  5. file that was distributed with this source code.
  6. #}
  7. <td class="sonata-ba-list-field sonata-ba-list-field-{{ field_description.type }}" objectId="{{ admin.id(object) }}">
  8. {% if
  9. field_description.options.identifier is defined
  10. and field_description.options.route is defined
  11. and admin.isGranted(field_description.options.route.name == 'show' ? 'VIEW' : field_description.options.route.name|upper, object)
  12. and admin.hasRoute(field_description.options.route.name)
  13. %}
  14. <a class="sonata-link-identifier" href="{{ admin.generateObjectUrl(field_description.options.route.name, object, field_description.options.route.parameters) }}">
  15. {%- block field %}{{ value }}{% endblock -%}
  16. </a>
  17. {% else %}
  18. {% set isEditable = field_description.options.editable is defined and field_description.options.editable and admin.isGranted('EDIT', object) %}
  19. {% set xEditableType = field_description.type|sonata_xeditable_type %}
  20. {% if isEditable and xEditableType %}
  21. {% set url = path('sonata_admin_set_object_field_value', { 'context': 'list', 'field': field_description.name, 'objectId': admin.id(object), 'code': admin.code(object) }) %}
  22. <span {% block field_span_attributes %}class="x-editable" data-type="{{ xEditableType }}" data-value="{{ value }}" data-title="{{ field_description.label|trans({}, field_description.translationDomain) }}" data-pk="{{ admin.id(object) }}" data-url="{{ url }}" {% endblock %}>
  23. {{ block('field') }}
  24. </span>
  25. {% else %}
  26. {{ block('field') }}
  27. {% endif %}
  28. {% endif %}
  29. </td>