order.html.twig 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. {% set value = (value is null ? field.default : value) %}
  2. {% set siblings = data.parent.children %}
  3. {% set canOrder = data.order %}
  4. {% set vertical = field.style == 'vertical' %}
  5. <div class="form-field grid pure-g{% if vertical %} vertical{% endif %}">
  6. <div class="form-label{% if not vertical %} block size-1-3 pure-u-1-3{% endif %}">
  7. <label>
  8. {% if field.help %}
  9. <span class="tooltip" data-asTooltip-position="w" title="{{ field.help|e|tu }}">{{ field.label|tu }}</span>
  10. {% else %}
  11. {{ field.label|tu }}
  12. {% endif %}
  13. {{ field.validate.required in ['on', 'true', 1] ? '<span class="required">*</span>' }}
  14. </label>
  15. </div>
  16. <div class="form-data{% if not vertical %} block size-2-3 pure-u-2-3{% endif %}">
  17. <div class="form-order-wrapper {{ field.size }}">
  18. <input
  19. type="hidden"
  20. data-order
  21. {% if field.disabled or isDisabledToggleable %}disabled="disabled"{% endif %}
  22. name="{{ (scope ~ field.name)|fieldName }}"
  23. value="" />
  24. {% if not canOrder %}
  25. <div class="notice">{{ "PLUGIN_ADMIN.ORDERING_DISABLED_BECAUSE_PAGE_NO_PREFIX"|tu|raw }}</div>
  26. {% endif %}
  27. {% if siblings|length < 200 %}
  28. {% set sortable_count = 0 %}
  29. <ul id="ordering" class="orderable {{ field.classes }}">
  30. {% for page in siblings if page.order %}
  31. <li class="drag-handle" data-id="{{ page.slug }}" {{ page.slug == data.slug ? 'data-active-id' : ''}}><span class="page-order">{{ page.order }}</span> {{ page.title|e }} <a href="{{ getPageUrl(page) }}"><i class="fa fa-external-link"></i></a></li>
  32. {% set sortable_count = loop.index %}
  33. {% endfor %}
  34. </ul>
  35. {% if sortable_count < siblings|length %}
  36. <label>{{ "PLUGIN_ADMIN.UNSORTABLE_PAGES"|tu }}</label>
  37. <ul class="orderable disabled">
  38. {% for page in siblings if not page.order %}
  39. <li {{ page.slug == data.slug ? 'data-active-id' : ''}}>{{ page.title|e }} <a href="{{ getPageUrl(page) }}"><i class="fa fa-external-link"></i></a></li>
  40. {% endfor %}
  41. </ul>
  42. {% endif %}
  43. {% else %}
  44. <div class="notice">{{ "PLUGIN_ADMIN.ORDERING_DISABLED_BECAUSE_TOO_MANY_SIBLINGS"|tu }}</div>
  45. {% endif %}
  46. </div>
  47. </div>
  48. </div>