<?php
include('koneksi.php');
include('classes/diamond-telo.php');

$POST = file_get_contents("php://input");
$data = json_decode($POST, true);

if (!isset($data['terminal_id'], $data['trx_id'], $data['amount'], $data['custom_ref'], $data['created_at'], $data['status'])) {
    $result = array('success' => false, 'message' => 'Missing required fields');
    echo json_encode($result);
    exit;
}

$userqris = $data['terminal_id'];
$trxid = $data['trx_id'];
$amount = $data['amount'];
$custom_ref = $data['custom_ref'];
$created_at = $data['created_at'];
$status = $data['status'];

$userqris = mysqli_real_escape_string($koneksi, $userqris);
$trxid = mysqli_real_escape_string($koneksi, $trxid);
$amount = mysqli_real_escape_string($koneksi, $amount);
$status = mysqli_real_escape_string($koneksi, $status);

$getuserID = mysqli_query($koneksi, "SELECT * FROM anggota WHERE nama_pengguna_anggota = '$userqris'") or die(mysqli_error($koneksi));
$gu = mysqli_fetch_array($getuserID);
if (!$gu) {
    $result = array('success' => false, 'message' => 'User not found');
    echo json_encode($result);
    exit;
}
$userIDnya = $gu['id_anggota'];
$created_date = date('Y-m-d H:i:s');
$note = 'Topup QRIS Otomatis';
$kd_transaksi = 'QRIS'.$trxid;

$proses_api = $WL->deposit($userqris, $amount);

if ($proses_api['status'] = 1) {
    $insert_transaksi = mysqli_query($koneksi, "INSERT INTO deposit (id_anggota_deposit, kode_deposit, nama_pengguna_anggota_deposit, asal_deposit, tujuan_deposit, bonus_deposit, jumlah_deposit, tanggal_deposit, status_deposit) VALUES ('$userIDnya', '$kd_transaksi', '$userqris', '', 'QRIS OTOMATIS', '', '$amount', '$created_date', 'disetujui')") or die(mysqli_error($koneksi));
    
    $updateBalance = mysqli_query($koneksi, "UPDATE anggota SET saldo_anggota = saldo_anggota + '$amount' WHERE id_anggota = '$userIDnya'") or die(mysqli_error($koneksi));
    
    
if ($status == 'success') { $result = array('message' => 'Success Process by System'); } else { $result = array('success' => false, 'message' => 'Invalid payment status'); }
}

header('Content-type: application/json');
echo json_encode($result);
?>