{{-- ── HEADER ── --}}
{{-- ── LEGENDA BADGE ── --}}
@if (session('success'))
{{-- ── MOBILE CARD VIEW ── --}}
@forelse ($bloggers as $blogger)
@php
$no = ($bloggers instanceof \Illuminate\Pagination\AbstractPaginator)
? ($bloggers->firstItem() + $loop->index)
: $loop->iteration;
$count = $blogger->posts_count ?? 0;
@endphp
@empty
@endforelse
{{-- ── PAGINATION ── --}}
@if($bloggers instanceof \Illuminate\Pagination\AbstractPaginator && request('per_page') !== 'all')
@php
$currentPage = $bloggers->currentPage();
$lastPage = $bloggers->lastPage();
$perPage = request('per_page', 5);
$search = request('search');
$from = $bloggers->firstItem() ?? 0;
$to = $bloggers->lastItem() ?? 0;
$total = $bloggers->total();
$window = 1;
$rangeStart = max(2, $currentPage - $window);
$rangeEnd = min($lastPage - 1, $currentPage + $window);
$pagesWithDots = [1];
if ($rangeStart > 2) $pagesWithDots[] = '...';
for ($i = $rangeStart; $i <= $rangeEnd; $i++) $pagesWithDots[] = $i;
if ($rangeEnd < $lastPage - 1) $pagesWithDots[] = '...';
if ($lastPage > 1) $pagesWithDots[] = $lastPage;
$buildUrl = function(int $page) use ($perPage, $search): string {
$params = ['page' => $page, 'per_page' => $perPage];
if ($search) $params['search'] = $search;
return url()->current() . '?' . http_build_query($params);
};
@endphp
@if ($total > 0)
Daftar Blogger
Jumlah postingan:
Belum ada
1–5
6–15
16–30
30+
{{-- ── FILTER & SEARCH ── --}}
{{ session('success') }}
@endif
{{-- Helper PHP untuk badge class --}}
@php
function badgeClass(int $n): string {
if ($n === 0) return 'badge-empty';
if ($n <= 5) return 'badge-low';
if ($n <= 15) return 'badge-mid';
if ($n <= 30) return 'badge-high';
return 'badge-top';
}
function dotClass(int $n): string {
if ($n === 0) return 'dot-empty';
if ($n <= 5) return 'dot-low';
if ($n <= 15) return 'dot-mid';
if ($n <= 30) return 'dot-high';
return 'dot-top';
}
@endphp
{{-- ── DESKTOP TABLE ── --}}
| # | Nama | Postingan | Aksi | ||
|---|---|---|---|---|---|
| {{ $no }} | {{ $blogger->name }} | {{ $blogger->email }} | {{ $count > 0 ? $count . ' post' : 'Belum ada' }} | ||
|
Belum ada blogger.
|
|||||
{{ $blogger->name }}
#{{ $no }}{{ $blogger->email }}
{{-- Badge jumlah post --}}
{{ $count > 0 ? $count . ' postingan' : 'Belum ada postingan' }}
Menampilkan {{ $from }}–{{ $to }}
dari {{ $total }} blogger
@if ($lastPage > 1)
@endif
@endif
@endif