<?php
if (!defined('INDEX')) die();

// 1. Ambil dan amankan data dari form
$id    = mysqli_real_escape_string($con, $_POST['id']);
$nama  = mysqli_real_escape_string($con, $_POST['nama_siswa']);
$nis   = mysqli_real_escape_string($con, $_POST['nis']);
$kode  = mysqli_real_escape_string($con, $_POST['tebus']);
$tgl   = date('Y-m-d H:i:s');

// 2. Validasi: Pastikan jenis tebus sudah dipilih
if (empty($kode)) {
    echo "<script>alert('GAGAL! Silakan pilih jenis penebusan terlebih dahulu.'); window.history.back();</script>";
    exit;
}

// 3. Mengambil poin dari tabel tebus berdasarkan kode
$query_tebus = mysqli_query($con, "SELECT nama_tebus, poin_tebus FROM tebus WHERE kode_tebus = '$kode'");
$data_tebus  = mysqli_fetch_assoc($query_tebus);

if (!$data_tebus) {
    echo "<script>alert('GAGAL! Kode penebusan tidak valid.'); window.history.back();</script>";
    exit;
}

$poin_kurang = $data_tebus['poin_tebus'];
$nama_tebus  = $data_tebus['nama_tebus'];

// 4. Validasi Tambahan: Cek apakah poin siswa cukup untuk dikurangi (Opsional tapi penting)
$cek_siswa = mysqli_query($con, "SELECT poin_sis FROM siswa WHERE id_siswa = '$id'");
$ds = mysqli_fetch_assoc($cek_siswa);
if ($ds['poin_sis'] < $poin_kurang) {
    // Anda bisa memilih tetap memproses (poin jadi minus) atau menolak
    // Contoh menolak jika poin tidak cukup:
    // echo "<script>alert('GAGAL! Poin siswa tidak cukup untuk ditebus.'); window.history.back();</script>";
    // exit;
}

// 5. Menyimpan riwayat tebus (Perbaiki urutan kolom agar sesuai dengan VALUES)
$query_log = "INSERT INTO rw_tebus (nis, nama, tanggal, kode, poin) 
              VALUES ('$nis', '$nama', '$tgl', '$kode', '$poin_kurang')";
mysqli_query($con, $query_log);

// 6. Update poin siswa (Pengurangan Poin)
$query_update = "UPDATE siswa SET poin_sis = poin_sis - $poin_kurang WHERE id_siswa = '$id'";
$result = mysqli_query($con, $query_update);

// 7. Menampilkan hasil dengan gaya AdminLTE
if ($result) {
    echo "<div class='alert alert-success' style='margin:20px;'>
            <h4><i class='icon fa fa-check'></i> Berhasil!</h4>
            Siswa <b>$nama</b> telah melakukan penebusan: <b>$nama_tebus</b>. 
            Poin berhasil dikurangi sebesar <b>$poin_kurang</b>.
          </div>";
    echo "<meta http-equiv='refresh' content='2; url=?hal=tebus'>";
} else {
    echo "<div class='alert alert-danger'>
            <h4><i class='icon fa fa-ban'></i> Gagal!</h4>
            Database Error: " . mysqli_error($con) . "
          </div>";
}
?>