@extends('layouts.guru') @section('title', 'Beranda Guru') @section('topbar')
Selamat datang, {{ auth()->user()->name }}! 👋
Kelola kelas, buat tugas, dan pantau perkembangan belajar siswa.
@if($daftarKelas->isNotEmpty())
@endif
{{ now()->translatedFormat('l, d F Y') }}
@endsection @section('content') {{-- ===== EMPTY STATE (belum ada kelas) ===== --}} @if($daftarKelas->isEmpty())
🏫

Belum ada kelas

Buat kelas pertama agar siswa bisa bergabung dan mengerjakan tugas.

+ Buat Kelas Pertama
@else {{-- ===== 5 STAT CARDS ===== --}}
{{ $countTugas }}
Tugas Aktif
{{ $countBelumSelesai }} belum selesai
{{ $siswaAktif }}
Siswa Aktif
dari {{ $totalSiswa }} siswa
{{ $avgSkor !== null ? $avgSkor . '%' : '—' }}
Rata-rata Ketercapaian
di semua tugas
{{ $miskonsepsiCount }}
Miskonsepsi Dominan
perlu perhatian
{{ $soalDiBank }}
Soal di Bank
siap digunakan
{{-- ===== 2-COL DASHBOARD GRID ===== --}}
{{-- ===== KIRI: Konten Utama ===== --}}
{{-- Ringkasan Kelas --}}
Ringkasan {{ $kelasAktif->nama }} Lihat detail kelas
{{-- KKM Side --}}
{{ $avgSkor !== null ? $avgSkor . '%' : '—' }}
@if($avgSkor !== null) {{ $avgSkor >= $kkm ? 'Di atas' : 'Di bawah' }} KKM {{ $kkm }}% @else Belum ada data @endif
@if($avgSkor !== null)
{{ $avgSkor >= $kkm ? '⭐' : '😔' }}
@endif
@if($avgSkor === null) Belum ada sesi selesai. @elseif($avgSkor >= $kkm) Bagus! Pertahankan semangat belajar siswa. @else Perlu perhatian khusus pada indikator bermasalah. @endif
{{-- Trend Side --}}
Tren Ketercapaian 7 Hari Terakhir
@foreach($tren as $t) {{ $t['tanggal'] }} @endforeach
{{-- Tugas Terbaru --}}
Tugas Terbaru Lihat semua
@if($tugasTerbaru->isEmpty())
Belum ada tugas. Buat tugas pertama.
@else @foreach($tugasTerbaru as $row) @php $t = $row['tugas']; $warna = $row['avg'] !== null ? ($row['avg'] >= $kkm ? '#16a34a' : ($row['avg'] >= 50 ? '#d97706' : '#dc2626')) : '#9ca3af'; @endphp @endforeach
Nama Tugas Indikator Siswa Selesai Rata-rata Status Aksi
{{ $t->indikator->kode ?? '—' }}
{{ $kelasAktif->nama }}
{{ $t->indikator->deskripsi ?? '—' }}
{{ $row['selesai'] }}/{{ $row['total'] }}
@if($row['avg'] !== null) {{ $row['avg'] }}% @else — @endif @if($row['generate'] !== 'selesai') Generate... @elseif($row['status'] === 'selesai') Selesai @elseif($row['status'] === 'aktif') Aktif @else Belum @endif @if($t->status_generate === 'selesai') Lihat Hasil @else Lanjutkan @endif
@endif
{{-- Tips & Panduan --}}
💡
Tips Guru Hari Ini

Gunakan analisis miskonsepsi untuk memberikan pendampingan yang tepat sasaran. Fokus pada siswa dengan skor di bawah KKM {{ $kkm }}%.

Panduan Singkat
@foreach([ 'Buat tugas baru dengan memilih indikator', 'Gunakan bank soal agar soal dapat digunakan ulang', 'Analisis hasil untuk mengetahui miskonsepsi siswa', 'Berikan tindak lanjut sesuai hasil evaluasi', ] as $tip)
✓
{{ $tip }}
@endforeach
{{-- ===== KANAN: Sidebar ===== --}}
{{-- Tugas Terkini --}}
Tugas Terkini Lihat semua
@forelse($tugasTerbaru->take(3) as $row) @php $sbadge = match($row['status']) { 'selesai' => ['kelas' => 'gr-sbadge-selesai', 'teks' => 'SELESAI'], 'aktif' => ['kelas' => 'gr-sbadge-sebagian', 'teks' => 'SEBAGIAN'], default => ['kelas' => 'gr-sbadge-belum', 'teks' => 'BELUM SELESAI'], }; @endphp
{{ $sbadge['teks'] }}
{{ $row['tugas']->indikator->deskripsi ?? $row['tugas']->indikator->kode ?? 'Tugas' }}
{{ $kelasAktif->nama }}
@empty
Belum ada tugas.
@endforelse
{{-- Tombol Buat Tugas Baru --}} + Buat Tugas Baru {{-- Aksi Cepat --}} {{-- Miskonsepsi Dominan --}}
Miskonsepsi Dominan di Kelas Lihat detail
@if($miskonsepsiDominan->isEmpty())
Belum ada data miskonsepsi.
@else @foreach($miskonsepsiDominan as $m) @php $pct = $totalMiskonFrekuensi > 0 ? round($m->frekuensi / $totalMiskonFrekuensi * 100) : 0; $barColors = ['#ef4444','#f97316','#eab308','#06b6d4','#8b5cf6']; $barColor = $barColors[$loop->index] ?? '#9ca3af'; @endphp
{{ $m->label }} {{ $pct }}%
@endforeach @endif
@endif @endsection @section('scripts') @endsection