<?php
include_once __DIR__ . '/../settings/config_xui_api.php';
include_once __DIR__ . '/../settings/config_utils.php';
global $connection, $match, $user_id, $volume, $botUrl, $amount, $gateType, $admin, $payDescription;

        $orderId = $match[1];
        $time = time();

        $stmt = $connection->prepare("SELECT * FROM `orders_list` WHERE `id` = ?");
        $stmt->bind_param("i", $orderId);
        $stmt->execute();
        $orderInfo = $stmt->get_result()->fetch_assoc();
        $stmt->close();

        $server_id = $orderInfo['server_id'];
        $inbound_id = $orderInfo['inbound_id'];
        $remark = $orderInfo['remark'];
        $uuid = $orderInfo['uuid'] ?? "0";
        $planid = $match[2];

        $stmt = $connection->prepare("SELECT * FROM `increase_plan` WHERE `id` = ?");
        $stmt->bind_param("i", $planid);
        $stmt->execute();
        $res = $stmt->get_result()->fetch_assoc();
        $stmt->close();
        $volume = $res['volume'];

        $stmt = $connection->prepare("SELECT * FROM server_config WHERE id=?");
        $stmt->bind_param("i", $server_id);
        $stmt->execute();
        $server_info = $stmt->get_result()->fetch_assoc();
        $stmt->close();
        $serverType = $server_info['type'];

        if ($serverType == "marzban") {
            $response = editMarzbanConfig($server_id, ['remark' => $remark, 'plus_volume' => $volume]);
        }
        else {
            if ($inbound_id > 0)
                $response = editClientTraffic($server_id, $inbound_id, $uuid, $volume, 0);
            else
                $response = editInboundTraffic($server_id, $uuid, $volume, 0);
        }
        if ($response && isset($response->success) && $response->success) {
            $stmt = $connection->prepare("UPDATE `orders_list` SET `notif` = 0 WHERE `uuid` = ?");
            $stmt->bind_param("s", $uuid); $stmt->execute(); $stmt->close();
            
            showForm("پرداخت شما با موفقیت انجام شد. $volume گیگ به حجم سرویس شما اضافه شد", $payDescription, true);

            $vraylink = json_decode($orderInfo['link'], true);
            if (!is_array($vraylink)) { $vraylink = [$orderInfo['link']]; }

            foreach ($vraylink as $link) {
                $safeLink = htmlspecialchars($link, ENT_QUOTES, 'UTF-8');
                $acc_text = "✅ افزایش حجم انجام شد\n\n🔮 نام سرویس: $remark\n🔋 حجم افزوده شده: $volume گیگ\n💝 config : <code>$safeLink</code>";

                $file = RandomString() . ".png";
                QRcode::png($link, $file, 'L', 11, 0);
                if (function_exists('addBorderImage')) addBorderImage($file);

                if (file_exists(dirname(__DIR__) . "/settings/QRCode.jpg")) {
                    $backgroundImage = imagecreatefromjpeg(dirname(__DIR__) . "/settings/QRCode.jpg"); $qrImage = imagecreatefrompng($file);
                    $qrWidth = imagesx($qrImage); $qrHeight = imagesy($qrImage);
                    $newWidth = round($qrWidth * 1.5); $newHeight = round($qrHeight * 1.5);
                    $startX = round((imagesx($backgroundImage) - $newWidth) / 2);
                    $startY = round(300 - ($newHeight - $qrHeight) / 2);
                    imagecopyresampled($backgroundImage, $qrImage, $startX, $startY, 0, 0, $newWidth, $newHeight, $qrWidth, $qrHeight);
                    imagepng($backgroundImage, $file); imagedestroy($backgroundImage); imagedestroy($qrImage);
                }

                sendPhoto($file, $acc_text, json_encode(['inline_keyboard' => [[['text' => "صفحه اصلی 🏘", 'callback_data' => "mainMenu"]]]]), "HTML", $user_id);
                if (file_exists($file)) unlink($file);
            }

            $keys = json_encode(['inline_keyboard' => [[['text' => "خرید از درگاه $gateType 💞", 'callback_data' => 'NetFreedomVPN']]]]);
            $user_info = Bot('getChat', ['chat_id' => $user_id])->result;
            $first_name = $user_info->first_name ?? 'کاربر'; $username = $user_info->username ?? 'ندارد';

            sendMessage("\n🤎 افزایش حجم سرویس ( درگاه )\n\n🧝‍♂️آیدی کاربر: $user_id\n🛡اسم کاربر: $first_name\n🔖 نام کاربری: @$username\n💰مبلغ پرداختی: $amount تومان\n🔮 نام سرویس: $remark\n", $keys, "html", $admin);
            exit;
        }
        else {
            showForm("پرداخت شما با موفقیت انجام شد ولی مشکل فنی در ارتباط با سرور. مبلغ " . number_format($amount) . " تومان به کیف پول شما اضافه شد", $payDescription, true);
            $stmt = $connection->prepare("UPDATE `users` SET `wallet` = `wallet` + ? WHERE `userid` = ?");
            $stmt->bind_param("ii", $amount, $user_id); $stmt->execute(); $stmt->close();
            exit;
        }

