<?php
require_once('session.php');

$metode = $_POST['metode'];
$nominal = preg_replace('/[^A-Za-z0-9\-]/', '', $_POST['nominal']);
$pay_from = $_POST['pay_from'];
$catatan = $_POST['catatan'];
$postID = $_POST['postID'];

$unik = date('Hs');
$kode_unik = substr(str_shuffle(1234567890), 0, 3);
$kd_transaksi = date('Ymds') . $kode_unik;

$totalBayar = $nominal;

$created_date = date('Y-m-d H:i:s');

if (isset($_POST['submit'])) {
    if ($nominal < 50000) {
        // Notifikasi jika nominal kurang dari 50.000
        $_SESSION['notif'] = ['type' => 'warning', 'message' => 'Nominal minimal adalah 50.000. Silakan masukkan jumlah yang lebih besar.'];
        header('Location: ' . $_SERVER['HTTP_REFERER']);
        exit();
    } else {
        $insert_transaksi = mysqli_query($conn, "INSERT INTO `tb_transaksi` (`kd_transaksi`, `date`, `transaksi`, `total`, `saldo`, `note`, `gameid`, `providerID`, `jenis`, `metode`, `pay_from`, `userID`, `status`) VALUES ('$kd_transaksi','$created_date','Top Up','$nominal',0, '$catatan', '', '0','1','$metode','$pay_from','$postID',0)") or die(mysqli_error($conn));
        
        if ($insert_transaksi) {
            // Notifikasi jika transaksi berhasil
            $_SESSION['notif'] = ['type' => 'success', 'message' => 'Top up berhasil. Silakan cek riwayat transaksi Anda.'];
            header('Location: ' . $_SERVER['HTTP_REFERER']);
        } else {
            // Notifikasi jika terjadi kesalahan pada query
            $_SESSION['notif'] = ['type' => 'danger', 'message' => 'Terjadi kesalahan saat memproses transaksi. Silakan coba lagi.'];
        }
        header('Location: ' . $_SERVER['HTTP_REFERER']);
        exit();
    }
} else {
    // Notifikasi jika akses langsung tanpa submit form
    $_SESSION['notif'] = ['type' => 'danger', 'message' => 'Akses tidak valid. Silakan coba lagi.'];
    header('Location: ' . $_SERVER['HTTP_REFERER']);
    exit();
}

?>