<?php
session_start();
ob_start(); 
require_once '../koneksi.php';

// 1. Ambil Periode Aktif dengan benar
$q_aktif = mysqli_query($koneksi, "SELECT t.id_tp_tahun, s.id_semester 
                                   FROM tahun_pelajaran t, semester s 
                                   WHERE t.status='Aktif' AND s.status='Aktif' LIMIT 1");
$aktif = mysqli_fetch_array($q_aktif);

// Ambil nilainya dari hasil query
$id_tp_aktif = $aktif['id_tp_tahun'] ?? 0;
$id_sem_aktif = $aktif['id_semester'] ?? 0;

// Jika periode tidak ditemukan, hentikan proses
if ($id_tp_aktif == 0 || $id_sem_aktif == 0) {
    die("Error: Periode tahun ajaran/semester aktif belum disetting.");
}

// 2. LOGIKA SIMPAN / EDIT ROMBEL (POST)
if (isset($_POST['simpan_rombel'])) {
    $id_rombel  = (int)$_POST['id_rombel'];
    $id_level   = (int)$_POST['id_level'];
    $wali_kelas = (int)$_POST['wali_kelas'];
    $kelas      = mysqli_real_escape_string($koneksi, $_POST['kelas']);

    if (empty($kelas)) {
        die("Data kelas tidak ditemukan!");
    }

    if ($id_rombel > 0) {
        // Edit Rombel
        mysqli_query($koneksi, "UPDATE rombel SET 
            id_level   = '$id_level', 
            wali_kelas = '$wali_kelas', 
            kelas      = '$kelas' 
            WHERE id_rombel = '$id_rombel'");
    } else {
        // Tambah Rombel BARU (PENTING: Sertakan id_tp dan id_semester aktif!)
        mysqli_query($koneksi, "INSERT INTO rombel (id_level, wali_kelas, kelas, id_tp_tahun, id_semester) 
            VALUES ('$id_level', '$wali_kelas', '$kelas', '$id_tp_aktif', '$id_sem_aktif')");
    }
    
    header("Location: rombel.php"); 
    exit;
}
// ... (lanjutkan ke bagian logika tambah/hapus siswa)

// 3. LOGIKA TAMBAH SISWA KE ROMBEL (GET)
if (isset($_GET['tambah']) && isset($_GET['id_rombel'])) {
    $id_siswa = (int)$_GET['tambah'];
    $id_rombel = (int)$_GET['id_rombel'];

    mysqli_query($koneksi, "INSERT INTO anggota_rombel (id_siswa, id_rombel, id_semester, id_tp_tahun) 
                            VALUES ('$id_siswa', '$id_rombel', '$id_sem_aktif', '$id_tp_aktif')");
    
    header("Location: edit_rombel.php?id=$id_rombel");
    exit;
}

// 4. LOGIKA HAPUS SISWA DARI ROMBEL (GET)
if (isset($_GET['hapus']) && isset($_GET['id_rombel'])) {
    $id_siswa = (int)$_GET['hapus'];
    $id_rombel = (int)$_GET['id_rombel'];

    mysqli_query($koneksi, "DELETE FROM anggota_rombel 
                            WHERE id_siswa = '$id_siswa' 
                            AND id_rombel = '$id_rombel'
                            AND id_semester = '$id_sem_aktif' 
                            AND id_tp_tahun = '$id_tp_aktif'");
    
    header("Location: edit_rombel.php?id=$id_rombel");
    exit;
}

// 5. LOGIKA HAPUS ROMBEL (GET)
if (isset($_GET['hapus'])) {
    $id_hapus = (int)$_GET['hapus'];
    
    // 1. Hapus dulu data anak (anggota_rombel) agar tidak error/orphan
    mysqli_query($koneksi, "DELETE FROM anggota_rombel WHERE id_rombel = '$id_hapus'");
    
    // 2. Hapus data utama (rombel)
    mysqli_query($koneksi, "DELETE FROM rombel WHERE id_rombel = '$id_hapus'");
    
    header("Location: rombel.php");
    exit;
}

// 6. DEFAULT REDIRECT
header("Location: rombel.php");
exit;
ob_end_flush();
?>