@extends('layouts.guru') @section('title', 'Materi & Unit — ZAXARA Guru') @php $existingSoal = $editingUnit?->tes->first()?->soal->first(); $existingTes = $editingUnit?->tes->first(); @endphp @section('content')

Materi & Unit

Satu model untuk bacaan pelajaran umum maupun hafalan — bedanya hanya jenisnya (lihat PROJECT-SPEC.md §2).

@if (session('status'))
{{ session('status') }}
@endif @if ($errors->any())
Periksa kembali isian:
@endif
{{-- Panel kiri: daftar Materi --}}
+ Tambah Materi
@csrf
@forelse ($materiList as $m)
{{ $m->judul }}
{{ ucfirst($m->jenis) }}
{{ $m->unit_count }} unit
@empty

Belum ada materi.

@endforelse
@if ($selectedMateri) {{-- Panel tengah: daftar Unit --}}
Unit · {{ $selectedMateri->judul }}
@forelse ($selectedMateri->unit as $u)
{{ $u->urutan }}. {{ $u->judul }}
@empty

Belum ada unit.

@endforelse + Unit baru
{{-- Panel kanan: form Unit --}}
{{ $editingUnit ? 'Edit Unit — '.$editingUnit->judul : 'Unit Baru' }}
@csrf @if ($editingUnit) @method('PUT') @endif
Judul Unit
Konten Teks
Jenis Tes
Durasi Minimum Sesi (detik)
Soal (Pilihan Ganda)

Skeleton ini baru mendukung satu soal pilihan ganda per unit. Editor multi-soal & tipe susun/lengkapi menyusul — lihat backend/README.md.

@php $curPilihan = old('pilihan', $existingSoal->konten['pilihan'] ?? ['', '', '', '']); @endphp @php $curJawaban = old('jawaban_index', $existingSoal->konten['jawaban_index'] ?? null); @endphp @foreach (range(0, 3) as $i)
@endforeach
Tandai bulatan di kiri sebagai jawaban benar.
@else
Buat materi pertama lewat panel kiri untuk mulai menambah unit.
@endif
@endsection