the browser-facing portion of osu!
at master 77 lines 3.4 kB view raw
1{{-- 2 Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the GNU Affero General Public License v3.0. 3 See the LICENCE file in the repository root for full licence text. 4--}} 5@if ($object->currentPage() !== 1 || $object->hasMorePages()) 6 @php 7 $currentPage = $object->currentPage(); 8 @endphp 9 <nav class="{{ class_with_modifiers('pagination-v2', $modifiers ?? []) }}"> 10 <div class="pagination-v2__col"> 11 @if ($currentPage === 1) 12 <span class="pagination-v2__link pagination-v2__link--quick pagination-v2__link--disabled"> 13 <i class="fas fa-angle-left"></i> 14 <span class="hidden-xs"> 15 {{ osu_trans('common.pagination.previous') }} 16 </span> 17 </span> 18 @else 19 <a class="pagination-v2__link pagination-v2__link--link pagination-v2__link--quick" href="{{ $object->url($currentPage - 1) }}"> 20 <i class="fas fa-angle-left"></i> 21 <span class="hidden-xs"> 22 {{ osu_trans('common.pagination.previous') }} 23 </span> 24 </a> 25 @endif 26 </div> 27 28 <ul class="pagination-v2__col pagination-v2__col--pages"> 29 {{-- decide if we're showing first page link separately --}} 30 @if ($currentPage > 3) 31 <li class="pagination-v2__item"> 32 <a class="pagination-v2__link pagination-v2__link--link" href="{{ $object->url(1) }}">1</a> 33 </li> 34 @endif 35 36 @if ($currentPage > 4) 37 <li class="pagination-v2__item"> 38 <span class="pagination-v2__link">...</span> 39 </li> 40 @endif 41 42 @foreach(range(max($currentPage - 2, 1), ($object->hasMorePages() ? $currentPage + 1 : $currentPage)) as $page) 43 <li class="pagination-v2__item"> 44 @if ($page === $currentPage) 45 <span class="pagination-v2__link pagination-v2__link--active">{{ $page }}</span> 46 @else 47 <a class="pagination-v2__link pagination-v2__link--link" href="{{ $object->url($page) }}">{{ $page }}</a> 48 @endif 49 </li> 50 @endforeach 51 52 @if ($object->hasMorePages()) 53 <li class="pagination-v2__item"> 54 <span class="pagination-v2__link">...</span> 55 </li> 56 @endif 57 </ul> 58 59 <div class="pagination-v2__col"> 60 @if ($object->hasMorePages()) 61 <a class="pagination-v2__link pagination-v2__link--link pagination-v2__link--quick" href="{{ $object->url($currentPage + 1) }}"> 62 <span class="hidden-xs"> 63 {{ osu_trans('common.pagination.next') }} 64 </span> 65 <i class="fas fa-angle-right"></i> 66 </a> 67 @else 68 <span class="pagination-v2__link pagination-v2__link--quick pagination-v2__link--disabled"> 69 <span class="hidden-xs"> 70 {{ osu_trans('common.pagination.next') }} 71 </span> 72 <i class="fas fa-angle-right"></i> 73 </span> 74 @endif 75 </div> 76 </nav> 77@endif