<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    // Ambil data input
    $status_bank        = mysqli_real_escape_string($koneksi, $_POST['status_bank']);
    $status_qris_manual = mysqli_real_escape_string($koneksi, $_POST['status_qris_manual']);
    $link_qris_manual   = mysqli_real_escape_string($koneksi, $_POST['link_qris_manual']);
    $status_qris_auto   = mysqli_real_escape_string($koneksi, $_POST['status_qris_auto']);
    $sitransfer_key     = mysqli_real_escape_string($koneksi, $_POST['sitransfer_key']);

    // Variabel untuk query tambahan gambar
    $image_update_query = "";

    // CEK APAKAH ADA FILE UPLOAD BARU
    if (isset($_FILES['img_qris_manual']) && $_FILES['img_qris_manual']['error'] == 0) {
        // Path folder tujuan (Pastikan ini selalu konsisten)
        // Asumsi: file PHP ini ada di dalam folder admin/pages, jadi naik 2 level ke root
        $target_dir = "../../uploads/qris/";
        
        // Buat folder jika belum ada
        if (!is_dir($target_dir)) {
            mkdir($target_dir, 0777, true);
        }

        // Generate nama file unik (waktu + nama asli)
        $file_name = time() . '_' . basename($_FILES["img_qris_manual"]["name"]);
        $target_file = $target_dir . $file_name;
        $imageFileType = strtolower(pathinfo($target_file, PATHINFO_EXTENSION));

        // Validasi tipe file
        $allowed = array('jpg', 'jpeg', 'png', 'gif', 'webp');
        if (in_array($imageFileType, $allowed)) {
            // Coba upload file fisik
            if (move_uploaded_file($_FILES["img_qris_manual"]["tmp_name"], $target_file)) {
                // Jika berhasil upload, siapkan query update nama file
                // Hanya update kolom gambar jika file benar-benar terupload
                $image_update_query = ", img_qris_manual = '$file_name'";
            } else {
                // Optional: Debugging jika file gagal dipindah
                // echo "Gagal memindahkan file ke folder.";
            }
        }
    }

    // UPDATE DATABASE
    // Query dibuat dinamis. Jika $image_update_query kosong, kolom gambar tidak diubah (tetap pakai data lama).
    $sql = "UPDATE tb_web SET 
        status_bank = '$status_bank',
        status_qris_manual = '$status_qris_manual',
        link_qris_manual = '$link_qris_manual',
        status_qris_auto = '$status_qris_auto',
        sitransfer_key = '$sitransfer_key'
        $image_update_query
    "; // Di sini koma aman karena jika kosong baris baru langsung tutup kurung

    $update = mysqli_query($koneksi, $sql);

    if ($update) {
        echo "<script>alert('Berhasil disimpan!'); window.location='?page=payment';</script>";
    } else {
        // Tampilkan error SQL jika gagal untuk debugging
        echo "<script>alert('Gagal disimpan! " . mysqli_error($koneksi) . "'); history.back();</script>";
    }
} else {
    header("location:?page=payment");
}
?>