@extends('channels.layouts.master') @section('content') @php $setting = setting(); $currentPage = $news->currentPage(); $isFirstPage = $currentPage === 1; // প্রথম পেজে প্রথম ৪টা grid এ, বাকি list এ // ২য় পেজ থেকে সব list এ $gridItems = $isFirstPage ? $news->take(4) : collect([]); $listItems = $isFirstPage ? collect($news->items())->slice(4) : collect($news->items()); @endphp
@if ($page->hasTopContent())
{!! $page->renderTopContent() !!}
@endif
{{-- PAGE TITLE --}}
{{-- TOP GRID — শুধু প্রথম পেজে --}} @if($isFirstPage && $gridItems->count() > 0)
@foreach($gridItems as $info)
@include('global.image')

@if(isset($info->sub_title)) {{ $info->sub_title }} @endif {{ $info->title }}


{{ strip_tags($info->details) }}

{{ timeAgo($info->created_at) }}

@endforeach

@endif {{-- NEWS LIST + SIDEBAR --}}
{!! loopWidgets( 'channels.partial.news-list', collect($listItems), $page->content_widgets ?? [], ['category' => $category ?? null, 'featured' => true] ) !!}
{{-- ✅ PAGINATION --}} @if($news->lastPage() > 1)
{{ $news->firstItem() }}–{{ $news->lastItem() }} / মোট {{ $news->total() }}টি সংবাদ  |  পৃষ্ঠা {{ $news->currentPage() }} / {{ $news->lastPage() }}
    {{-- Previous --}} @if($news->onFirstPage())
  • @else
  • @endif {{-- Page Numbers --}} @php $current = $news->currentPage(); $last = $news->lastPage(); $start = max(1, $current - 2); $end = min($last, $current + 2); @endphp @if($start > 1)
  • ১
  • @if($start > 2)
  • ...
  • @endif @endif @for($i = $start; $i <= $end; $i++)
  • {{ $i }}
  • @endfor @if($end < $last) @if($end < $last - 1)
  • ...
  • @endif
  • {{ $last }}
  • @endif {{-- Next --}} @if($news->hasMorePages())
  • @else
  • @endif
@endif {{-- END PAGINATION --}}
@if ($page->hasBottomContent())
{!! $page->renderBottomContent() !!}
@endif
@endsection