@extends('layouts.app') @section('title', 'Leaderboard & Badge') @section('page-title', '🏆 Leaderboard & Badge') @section('content') {{-- Header --}}

RPLy Awards

Kontributor terbaik komunitas RPL — poin didapat dari diskusi, jawaban, dan upload materi.

{{-- Top 3 Bulan Ini --}} @if($monthlyTop->count() > 0)

🌟 Top Kontributor Bulan Ini

{{ now()->format('F Y') }}
@foreach($monthlyTop as $i => $u)
{{-- Rank badge --}}
@if($i===0) 🥇 @elseif($i===1) 🥈 @else 🥉 @endif
{{ strtoupper(substr($u->name,0,1)) }}
{{ $u->name }} {{ $u->role }}
{{ number_format($u->monthly_points ?? 0) }} pts
bulan ini
@endforeach
@endif
{{-- Leaderboard Utama --}}

📊 All-Time Leaderboard

Top 20
@foreach($leaderboard as $i => $u) @endforeach
# Pengguna Role ✅ Verified ⚡ Poin
@if($i===0) 🥇 @elseif($i===1) 🥈 @elseif($i===2) 🥉 @else {{ $i+1 }} @endif
{{ strtoupper(substr($u->name,0,1)) }}
{{ $u->name }} @if(auth()->id()===$u->id) (kamu) @endif
{{ $u->role }} {{ $u->verified_count ?? 0 }} {{ number_format($u->total_points) }}
{{-- Panel Kanan: Badge milik user + sistem poin --}}
{{-- Badge saya --}}

🎖️ Badge Saya

{{ $myBadges->count() }} / {{ $badges->count() }}
@if($myBadges->isEmpty())
🌱

Belum punya badge. Mulai berkontribusi!

@else
@foreach($myBadges as $ub)
{{ $ub->badge->icon }}
{{ $ub->badge->name }}
{{ $ub->awarded_at?->format('d M Y') }}
@endforeach
@endif
{{-- Cara dapat poin --}}

⚡ Cara Dapat Poin

@php $pointRules = [ ['icon'=>'🔥','label'=>'Daily Check-in','pts'=>'+5 – 20'], ['icon'=>'📝','label'=>'Buat diskusi forum','pts'=>'+5'], ['icon'=>'💬','label'=>'Jawab diskusi','pts'=>'+3'], ['icon'=>'✅','label'=>'Verified Solution','pts'=>'+20'], ['icon'=>'📚','label'=>'Upload materi','pts'=>'+10'], ['icon'=>'💡','label'=>'Komentar materi','pts'=>'+2'], ]; @endphp @foreach($pointRules as $rule)
{{ $rule['icon'] }} {{ $rule['label'] }}
{{ $rule['pts'] }}
@endforeach
{{-- Semua Badge yang tersedia --}}

🏅 Semua Badge

{{ $badges->count() }} badge tersedia
@php $earnedIds = $myBadges->pluck('badge_id')->toArray(); @endphp @foreach($badges as $badge)
{{ $badge->icon }}
{{ $badge->name }}
{{ $badge->description }}
@if(in_array($badge->id,$earnedIds)) ✅ Sudah diraih @else @if($badge->condition_type==='points') ⚡ {{ number_format($badge->condition_value) }} poin @elseif($badge->condition_type==='verified_answers') ✅ {{ $badge->condition_value }}x verified @elseif($badge->condition_type==='uploads') 📚 {{ $badge->condition_value }}x upload @elseif($badge->condition_type==='checkins') 🔥 {{ $badge->condition_value }}x check-in @endif @endif
@endforeach
@endsection