<?php
/**
 * webhook_receiver.php
 */

include("../serive/samparka.php"); // আপনার বিদ্যমান DB কানেকশন ফাইল

// ১. আপনার Secret বসানো আছে
define('MY_SECRET', '39ced892f4c4bfaa9468e3a9da2d783082ba310225693a97');

// ধাপ ১: Data রিড করা
$rawBody = file_get_contents('php://input');
$data = json_decode($rawBody, true);

if (!$data) {
    http_response_code(400);
    die('Invalid payload');
}

// ধাপ ২: Signature ভেরিফাই করা (নিরাপত্তার জন্য)
$receivedSignature = $_SERVER['HTTP_X_WEBHOOK_SIGNATURE'] ?? '';
$expectedSignature = hash_hmac('sha256', $rawBody, MY_SECRET);

if (!hash_equals($expectedSignature, $receivedSignature)) {
    http_response_code(401);
    die('Invalid signature');
}

// ধাপ ৩: ✅ আপনার ওয়েবসাইটের ডেটাবেজে অটোমেটিক ব্যালেন্স যোগ করা
try {
    $netAmount = (float)($data['net_amount'] ?? 0);
    $claimedBy = $data['claimed_by'] ?? '';

    // claimed_by (যেমন: 'CV111_user_123_trx_...') থেকে User ID বের করা
    preg_match('/user_(\d+)_/', $claimedBy, $matches);
    $userId = isset($matches[1]) ? (int)$matches[1] : 0;

    if ($userId > 0 && $netAmount > 0) {
        
        // ইউজারের ওয়ালেটে (shonu_kaichila) ব্যালেন্স প্লাস করা
        $netAmountSql = sprintf('%.2f', $netAmount);
        
        $updateQ = mysqli_query($conn, "UPDATE shonu_kaichila SET motta = motta + $netAmountSql WHERE balakedara = '$userId'");

        if (!$updateQ || mysqli_affected_rows($conn) <= 0) {
            // যদি আগে থেকে ইউজারের ওয়ালেট রো না থাকে, তবে নতুন রো তৈরি করা
            mysqli_query($conn, "INSERT INTO shonu_kaichila (balakedara, motta) VALUES ('$userId', $netAmountSql)");
        }
    }

    // ধাপ ৪: গেটওয়েকে ওকে রেসপন্স দেওয়া
    http_response_code(200);
    echo 'OK';

} catch (Exception $e) {
    http_response_code(500);
    echo 'Error updating balance: ' . $e->getMessage();
}
?>