<?php
session_start();
require_once __DIR__ . '/config.php';

$order_id = isset($_GET['order_id']) ? intval($_GET['order_id']) : 0;
$status_param = isset($_GET['status']) ? trim($_GET['status']) : '';

$message_title = "আপনার অর্ডারটি গ্রহণ করা হয়েছে!";
$message_desc = "আমাদের প্রতিনিধি খুব শীঘ্রই অর্ডারটি ভেরিফাই করার জন্য আপনার সাথে যোগাযোগ করবেন। অনুগ্রহ করে আপনার ফোনটি সচল রাখুন।";
$is_success = true; // ডিজাইন গ্রিন রাখার জন্য

if ($order_id > 0) {
    // ১. অর্ডারটির বর্তমান তথ্য ডাটাবেজ থেকে চেক করা
    $stmt = $pdo->prepare("SELECT * FROM orders WHERE id = ?");
    $stmt->execute([$order_id]);
    $order = $stmt->fetch(PDO::FETCH_ASSOC);

    if ($order) {
        // ২. যদি পেমেন্ট মেথড SSLCommerz হয়
        if ($order['payment_method'] === 'sslcommerz') {
            
            // SSLCommerz থেকে রিটার্ন করা POST ডাটা রিসিভ করা
            $ssl_status = isset($_POST['status']) ? trim($_POST['status']) : '';
            $val_id = isset($_POST['val_id']) ? trim($_POST['val_id']) : '';
            $bank_tran_id = isset($_POST['bank_tran_id']) ? trim($_POST['bank_tran_id']) : '';
            $amount = isset($_POST['amount']) ? floatval($_POST['amount']) : 0.00;

            // পেমেন্ট সফল হলে (SSLCommerz 'VALID' অথবা 'VALIDATED' পাঠায়)
            if ($ssl_status === 'VALID' || $ssl_status === 'VALIDATED' || $status_param === 'success') {
                
                // সিকিউরিটি চেক: ডাটাবেজের গ্র্যান্ড টোটাল আর পেইড অ্যামাউন্ট মিলছে কি না (ঐচ্ছিক কিন্তু নিরাপদ)
                // ডাটাবেজ আপডেট: পেমেন্ট স্ট্যাটাস 'Paid' করা এবং ব্যাংক ট্রানজেকশন আইডি সেট করা
                $update_stmt = $pdo->prepare("
                    UPDATE orders 
                    SET payment_status = 'Paid', transaction_id = ? 
                    WHERE id = ? AND payment_status != 'Paid'
                ");
                $update_stmt->execute([$bank_tran_id ? $bank_tran_id : 'SSL_' . $order_id, $order_id]);

                // পেমেন্ট সফল হওয়ার পরই কেবল কার্ট খালি করা হবে
                if (isset($_SESSION['cart'])) {
                    unset($_SESSION['cart']);
                }

                $message_title = "পেমেন্ট সফল ও অর্ডার নিশ্চিত হয়েছে!";
                $message_desc = "আপনার পেমেন্টটি আমরা সফলভাবে রিসিভ করেছি। খুব শীঘ্রই প্রোডাক্টটি আপনার ঠিকানায় পাঠিয়ে দেওয়া হবে। আমাদের সাথে থাকার জন্য ধন্যবাদ!";
                $is_success = true;

            } else {
                // পেমেন্ট ফেইল বা ক্যানসেল হলে
                $is_success = false;
                $message_title = "পেমেন্টটি সফল হয়নি!";
                
                if ($status_param === 'cancel' || $ssl_status === 'CANCELLED') {
                    $message_desc = "আপনি পেমেন্টটি বাতিল করেছেন। আপনি যদি আবার চেষ্টা করতে চান, দয়া করে চেকআউট পেজে ফিরে যান বা আমাদের সাথে যোগাযোগ করুন।";
                } else {
                    $message_desc = "দুঃখিত, আপনার পেমেন্ট ট্রানজেকশনটি সফল হয়নি। দয়া করে আপনার কার্ড বা মোবাইল ওয়ালেট চেক করে আবার চেষ্টা করুন।";
                }
            }
        } else {
            // ৩. ক্যাশ অন ডেলিভারি বা ম্যানুয়াল পেমেন্ট হলে (কার্ট ইতিপূর্বেই place_order.php তে খালি করা হয়েছে)
            $is_success = true;
            // আগের ডিফল্ট মেসেজই থাকবে
        }
    }
}
?>
<!DOCTYPE html>
<html lang="bn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title><?php echo $message_title; ?> | ShopVista</title>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <link href="https://fonts.googleapis.com/css2?family=Hind+Siliguri:wght@400;600;700&display=swap" rel="stylesheet">
    <style>
        body { font-family: 'Hind Siliguri', sans-serif; background-color: #f8f9fc; display: flex; align-items: center; justify-content: center; height: 100vh; margin: 0; }
        .success-card { background: white; padding: 40px; border-radius: 20px; box-shadow: 0 15px 35px rgba(0,0,0,0.05); text-align: center; max-width: 500px; width: 90%; }
        .success-icon { font-size: 4rem; color: #1cc88a; margin-bottom: 20px; }
        .error-icon { font-size: 4rem; color: #e74a3b; margin-bottom: 20px; }
        h1 { margin: 0 0 10px 0; color: #333; font-size: 1.8rem; }
        p { color: #858796; line-height: 1.6; font-size: 1rem; margin-bottom: 25px; }
        .order-id-badge { background: #eaecf4; color: #4e73df; padding: 6px 15px; border-radius: 30px; font-weight: 700; font-size: 1.1rem; }
        .btn-home { display: inline-block; background: #4e73df; color: white; text-decoration: none; padding: 12px 30px; border-radius: 10px; font-weight: 700; transition: 0.3s; }
        .btn-home:hover { background: #2e59d9; }
        .btn-retry { display: inline-block; background: #e74a3b; color: white; text-decoration: none; padding: 12px 30px; border-radius: 10px; font-weight: 700; transition: 0.3s; }
        .btn-retry:hover { background: #c0392b; }
    </style>
</head>
<body>

<div class="success-card">
    <?php if ($is_success): ?>
        <i class="fa-solid fa-circle-check success-icon"></i>
        <h1><?php echo $message_title; ?></h1>
        <p><?php echo $message_desc; ?></p>
        <p>অর্ডার আইডি: <span class="order-id-badge">#<?php echo $order_id; ?></span></p>
        <a href="index.php" class="btn-home">শপিং চালিয়ে যান <i class="fa-solid fa-arrow-right"></i></a>
    <?php else: ?>
        <i class="fa-solid fa-circle-xmark error-icon"></i>
        <h1><?php echo $message_title; ?></h1>
        <p><?php echo $message_desc; ?></p>
        <p>অর্ডার আইডি: <span class="order-id-badge">#<?php echo $order_id; ?></span></p>
        <a href="checkout.php" class="btn-retry"><i class="fa-solid fa-rotate-left"></i> আবার চেষ্টা করুন</a>
    <?php endif; ?>
</div>

</body>
</html>