vendor/croisiland/common-bundle/src/Resources/views/pagination/_pagination.html.twig line 1

Open in your IDE?
  1. {% if pagination.total_pages > 0 %}
  2. <div class="cruise-search-paging">
  3. <nav aria-label="Pagination des croisières">
  4. <ul class="pagination justify-content-center">
  5. {# Boutons "Premier" et "Précédent #}
  6. <li class="page-item {% if pagination.current_page <= 1 %}disabled{% endif %}">
  7. <a class="page-link" data-page="1" tabindex="-1" id="cruise_search_first">
  8. <span aria-hidden="true">&laquo;</span>
  9. <span class="sr-only">Premier</span>
  10. </a>
  11. </li>
  12. <li class="page-item {% if pagination.current_page <= 1 %}disabled{% endif %}">
  13. <a class="page-link" data-page="{{ pagination.current_page - 1 }}" tabindex="-1" id="cruise_search_previous">
  14. <span aria-hidden="true">&lsaquo;</span>
  15. <span class="sr-only">Précédent</span>
  16. </a>
  17. </li>
  18. {# Affichage des pages #}
  19. {% for page in 1..pagination.total_pages %}
  20. {%- if page <= 5 or page == pagination.current_page or page == pagination.current_page + 1 or page == pagination.current_page - 1 or page > pagination.total_pages - 5 %}
  21. {% if page == pagination.current_page %}
  22. <li class="page-item active">
  23. <a class="page-link" data-page="{{ page }}">{{ page }} <span class="sr-only">(current)</span></a>
  24. </li>
  25. {% elseif (page == 6 and pagination.current_page > 6) or (page == pagination.total_pages - 5 and pagination.current_page < pagination.total_pages - 5) %}
  26. <li class="page-item disabled"><span class="page-link">...</span></li>
  27. {% else %}
  28. <li class="page-item">
  29. <a class="page-link" data-page="{{ page }}">{{ page }}</a>
  30. </li>
  31. {% endif %}
  32. {%- endif %}
  33. {% endfor %}
  34. {# Boutons "Suivant" et "Dernier" #}
  35. <li class="page-item {% if pagination.current_page >= pagination.total_pages %}disabled{% endif %}">
  36. <a class="page-link" data-page="{{ pagination.current_page + 1 }}" id="cruise_search_next">
  37. <span aria-hidden="true">&rsaquo;</span>
  38. <span class="sr-only">Suivant</span>
  39. </a>
  40. </li>
  41. <li class="page-item {% if pagination.current_page >= pagination.total_pages %}disabled{% endif %}">
  42. <a class="page-link" data-page="{{ pagination.total_pages }}" id="cruise_search_last">
  43. <span aria-hidden="true">&raquo;</span>
  44. <span class="sr-only">Dernier</span>
  45. </a>
  46. </li>
  47. </ul>
  48. </nav>
  49. {# Info sur les éléments affichés #}
  50. <div class="result_info text-center" role="status" aria-live="polite">
  51. <small class="text-muted">
  52. Éléments <strong>{{ (pagination.current_page - 1) * pagination.per_page + 1 }}</strong> à <strong>{{ min([pagination.total_count, pagination.current_page * pagination.per_page]) }}</strong> sur <strong>{{ pagination.total_count }}</strong> éléments
  53. </small>
  54. </div>
  55. </div>
  56. {% endif %}