pagination.blade.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. @if($paginator->count() > 0 && $paginator->total() > $paginator->perPage())
  2. @php
  3. $block = ceil($paginator->currentPage() / $paginator->onEachSide);
  4. $prevBlockPage = (($block - 1) * $paginator->onEachSide);
  5. $nextBlockPage = (($block + 1) * $paginator->onEachSide - ($paginator->onEachSide - 1));
  6. @endphp
  7. <ul class="pagination">
  8. {{-- Previous Page Link --}}
  9. @if ($paginator->onFirstPage())
  10. <li class="page-item disabled" aria-disabled="true" aria-label="@lang('pagination.previous')">
  11. <span class="page-link" aria-hidden="true">&lsaquo;</span>
  12. </li>
  13. @else
  14. <li class="page-item">
  15. <a class="page-link" href="{{ $paginator->previousPageUrl() }}" rel="prev" aria-label="@lang('pagination.previous')">&lsaquo;</a>
  16. </li>
  17. @endif
  18. {{-- Pagination Elements --}}
  19. @foreach ($elements as $element)
  20. {{-- "Three Dots" Separator --}}
  21. @if (is_string($element))
  22. <li class="page-item disabled" aria-disabled="true"><span class="page-link">{{ $element }}</span></li>
  23. @endif
  24. {{-- Array Of Links --}}
  25. @if (is_array($element))
  26. @foreach ($element as $page => $url)
  27. @if($page > $prevBlockPage && $page < $nextBlockPage)
  28. @if ($page == $paginator->currentPage())
  29. <li class="page-item active" aria-current="page"><span class="page-link">{{ $page }}</span></li>
  30. @else
  31. <li class="page-item"><a class="page-link" href="{{ $url }}">{{ $page }}</a></li>
  32. @endif
  33. @endif
  34. @endforeach
  35. @endif
  36. @endforeach
  37. {{-- Next Page Link --}}
  38. @if ($paginator->hasMorePages())
  39. <li class="page-item">
  40. <a class="page-link" href="{{ $paginator->nextPageUrl() }}" rel="next" aria-label="@lang('pagination.next')">&rsaquo;</a>
  41. </li>
  42. @else
  43. <li class="page-item disabled" aria-disabled="true" aria-label="@lang('pagination.next')">
  44. <span class="page-link" aria-hidden="true">&rsaquo;</span>
  45. </li>
  46. @endif
  47. </ul>
  48. @endif