middleware('auth:siswa'); } /** * Halaman daftar mata pelajaran siswa */ public function index() { $siswa = Auth::guard('siswa')->user(); // Ambil semua mapel yang diajarkan di kelas siswa ini $mapelList = Mengajar::with(['mapel', 'guru']) ->where('id_kelas', $siswa->id_kelas) ->get() ->map(function ($mengajar) { return [ 'id_mengajar' => $mengajar->id_mengajar, 'nama_mapel' => optional($mengajar->mapel)->nama_mapel ?? '-', 'nama_guru' => optional($mengajar->guru)->nama ?? '-', 'jumlah_materi' => Materi::where('id_mengajar', $mengajar->id_mengajar)->count(), ]; }); return view('siswa.materi.index', compact('mapelList')); } /** * Halaman daftar materi per mata pelajaran */ public function show($id_mengajar) { $siswa = Auth::guard('siswa')->user(); // Pastikan mengajar ini memang untuk kelas siswa $mengajar = Mengajar::with(['mapel', 'guru']) ->where('id_mengajar', $id_mengajar) ->where('id_kelas', $siswa->id_kelas) ->firstOrFail(); $materiList = Materi::where('id_mengajar', $id_mengajar) ->orderBy('tanggal_upload', 'desc') ->get(); return view('siswa.materi.show', compact('mengajar', 'materiList')); } }