<?php
/**
 * قالب نتیجه پرداخت Dima Shop
 * نسخه: 1.0.0
 * 
 * این صفحه پس از بازگشت از درگاه پرداخت نمایش داده می‌شود
 */
if (!defined('ABSPATH')) exit;

// دریافت پارامترها از URL
$payment_status = isset($_GET['payment_status']) ? sanitize_text_field($_GET['payment_status']) : '';
$order_id = isset($_GET['order_id']) ? absint($_GET['order_id']) : 0;

global $wpdb;
$order = null;
$customer = array();

if ($order_id > 0) {
    $order = $wpdb->get_row($wpdb->prepare(
        "SELECT * FROM {$wpdb->prefix}dima_orders WHERE id = %d",
        $order_id
    ));
    
    if ($order) {
        $customer = json_decode($order->customer_data, true) ?: array();
    }
}

// تعیین وضعیت و پیام
$status_config = array(
    'success' => array(
        'icon' => '✅',
        'title' => 'پرداخت با موفقیت انجام شد',
        'message' => 'سفارش شما با موفقیت ثبت و پرداخت شد. به زودی سفارش شما پردازش و ارسال خواهد شد.',
        'color' => '#10b981',
        'bg_gradient' => 'linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%)',
        'border_color' => '#10b981'
    ),
    'failed' => array(
        'icon' => '❌',
        'title' => 'پرداخت ناموفق بود',
        'message' => 'متأسفانه پرداخت شما انجام نشد. لطفاً دوباره تلاش کنید یا با پشتیبانی تماس بگیرید.',
        'color' => '#ef4444',
        'bg_gradient' => 'linear-gradient(135deg, #fee2e2 0%, #fecaca 100%)',
        'border_color' => '#ef4444'
    ),
    'pending' => array(
        'icon' => '⏳',
        'title' => 'پرداخت در انتظار تایید',
        'message' => 'پرداخت شما در حال بررسی است. پس از تایید، سفارش شما پردازش خواهد شد.',
        'color' => '#f59e0b',
        'bg_gradient' => 'linear-gradient(135deg, #fef3c7 0%, #fde68a 100%)',
        'border_color' => '#f59e0b'
    )
);

$current_status = isset($status_config[$payment_status]) ? $status_config[$payment_status] : $status_config['failed'];

// لینک‌های مفید
$shop_url = get_permalink(get_option('dima_shop_page'));
$account_url = get_permalink(get_option('dima_account_page'));
$contact_url = get_option('dima_contact_page') ? get_permalink(get_option('dima_contact_page')) : '#';

do_action('dima_before_payment_result', $order_id, $payment_status);
?>

<div class="dima-payment-result" dir="rtl">
    
    <div class="result-container">
        
        <!-- آیکون و پیام اصلی -->
        <div class="result-header" style="background: <?php echo $current_status['bg_gradient']; ?>; border-color: <?php echo $current_status['border_color']; ?>;">
            <div class="result-icon"><?php echo $current_status['icon']; ?></div>
            <h1 class="result-title"><?php echo $current_status['title']; ?></h1>
            <p class="result-message"><?php echo $current_status['message']; ?></p>
        </div>
        
        <!-- اطلاعات سفارش -->
        <?php if ($order && $payment_status === 'success'): ?>
        <div class="result-box order-details">
            <h3> اطلاعات سفارش</h3>
            
            <div class="detail-grid">
                <div class="detail-item">
                    <span class="detail-label">شماره سفارش:</span>
                    <span class="detail-value">#<?php echo intval($order->id); ?></span>
                </div>
                
                <div class="detail-item">
                    <span class="detail-label">تاریخ ثبت:</span>
                    <span class="detail-value"><?php echo date_i18n('j F Y - H:i', strtotime($order->created_at)); ?></span>
                </div>
                
                <div class="detail-item">
                    <span class="detail-label">مبلغ پرداختی:</span>
                    <span class="detail-value price-value"><?php echo number_format($order->final_amount); ?> تومان</span>
                </div>
                
                <div class="detail-item">
                    <span class="detail-label">روش پرداخت:</span>
                    <span class="detail-value"><?php echo esc_html($order->payment_method); ?></span>
                </div>
                
                <?php if (!empty($order->ref_id)): ?>
                <div class="detail-item">
                    <span class="detail-label">کد پیگیری:</span>
                    <span class="detail-value"><code><?php echo esc_html($order->ref_id); ?></code></span>
                </div>
                <?php endif; ?>
                
                <div class="detail-item">
                    <span class="detail-label">وضعیت:</span>
                    <span class="detail-value">
                        <span class="status-badge status-<?php echo esc_attr($order->status); ?>">
                            <?php
                            $status_labels = array(
                                'pending' => 'در انتظار',
                                'processing' => 'در حال پردازش',
                                'completed' => 'تکمیل شده',
                                'failed' => 'ناموفق',
                                'cancelled' => 'لغو شده'
                            );
                            echo $status_labels[$order->status] ?? $order->status;
                            ?>
                        </span>
                    </span>
                </div>
            </div>
        </div>
        
        <!-- اطلاعات مشتری -->
        <div class="result-box customer-details">
            <h3>👤 اطلاعات خریدار</h3>
            
            <div class="detail-grid">
                <?php if (!empty($customer['name'])): ?>
                <div class="detail-item">
                    <span class="detail-label">نام:</span>
                    <span class="detail-value"><?php echo esc_html($customer['name']); ?></span>
                </div>
                <?php endif; ?>
                
                <?php if (!empty($customer['phone'])): ?>
                <div class="detail-item">
                    <span class="detail-label">موبایل:</span>
                    <span class="detail-value"><?php echo esc_html($customer['phone']); ?></span>
                </div>
                <?php endif; ?>
                
                <?php if (!empty($customer['email'])): ?>
                <div class="detail-item">
                    <span class="detail-label">ایمیل:</span>
                    <span class="detail-value"><?php echo esc_html($customer['email']); ?></span>
                </div>
                <?php endif; ?>
                
                <?php if (!empty($customer['address'])): ?>
                <div class="detail-item full-width">
                    <span class="detail-label">آدرس:</span>
                    <span class="detail-value"><?php echo esc_html($customer['address']); ?></span>
                </div>
                <?php endif; ?>
            </div>
        </div>
        
        <!-- آیتم‌های سفارش -->
        <div class="result-box order-items">
            <h3>🛍️ محصولات سفارش</h3>
            
            <?php
            $items = $wpdb->get_results($wpdb->prepare(
                "SELECT i.*, p.post_title 
                 FROM {$wpdb->prefix}dima_order_items i 
                 LEFT JOIN {$wpdb->posts} p ON i.product_id = p.ID 
                 WHERE i.order_id = %d",
                $order_id
            ));
            ?>
            
            <?php if (!empty($items)): ?>
            <div class="items-list">
                <?php foreach ($items as $item): ?>
                <div class="order-item-row">
                    <div class="item-info">
                        <span class="item-name"><?php echo esc_html($item->post_title ?: 'محصول حذف شده'); ?></span>
                        <span class="item-qty">× <?php echo intval($item->quantity); ?></span>
                    </div>
                    <span class="item-price"><?php echo number_format($item->price * $item->quantity); ?> تومان</span>
                </div>
                <?php endforeach; ?>
            </div>
            <?php endif; ?>
        </div>
        
        <?php endif; ?>
        
        <!-- پیام خطا برای پرداخت ناموفق -->
        <?php if ($payment_status === 'failed'): ?>
        <div class="result-box error-details">
            <h3>⚠️ دلایل احتمالی عدم پرداخت</h3>
            <ul class="error-list">
                <li>موجودی کافی در حساب بانکی شما وجود نداشته است</li>
                <li>رمز دوم کارت به درستی وارد نشده است</li>
                <li>سقف تراکنش‌های روزانه کارت شما به پایان رسیده است</li>
                <li>اتصال به درگاه بانکی با مشکل مواجه شده است</li>
            </ul>
            
            <div class="error-actions">
                <a href="<?php echo esc_url($shop_url); ?>" class="btn btn-primary btn-large">
                    🛍️ بازگشت به فروشگاه
                </a>
                <a href="<?php echo esc_url($contact_url); ?>" class="btn btn-outline btn-large">
                    📞 تماس با پشتیبانی
                </a>
            </div>
        </div>
        <?php endif; ?>
        
        <!-- دکمه‌های اکشن -->
        <div class="result-actions">
            <?php if ($payment_status === 'success'): ?>
                <a href="<?php echo esc_url($account_url); ?>?action=orders" class="btn btn-primary btn-large">
                    📦 مشاهده سفارشات من
                </a>
                <a href="<?php echo esc_url($shop_url); ?>" class="btn btn-outline btn-large">
                    🛍️ ادامه خرید
                </a>
            <?php elseif ($payment_status === 'pending'): ?>
                <a href="<?php echo esc_url($account_url); ?>?action=orders" class="btn btn-primary btn-large">
                    📦 پیگیری سفارش
                </a>
            <?php endif; ?>
        </div>
        
        <!-- اطلاعات تکمیلی -->
        <div class="result-footer">
            <div class="footer-info">
                <div class="info-item">
                    <span class="info-icon"></span>
                    <span>ایمیل تایید سفارش به آدرس شما ارسال شد</span>
                </div>
                <div class="info-item">
                    <span class="info-icon">📱</span>
                    <span>پیامک تایید به شماره موبایل شما ارسال خواهد شد</span>
                </div>
                <div class="info-item">
                    <span class="info-icon">🚚</span>
                    <span>سفارش شما در اسرع وقت پردازش و ارسال می‌شود</span>
                </div>
            </div>
        </div>
        
    </div>
    
</div>

<style>
.dima-payment-result {
    max-width: 900px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: 'Vazir', Tahoma, sans-serif;
}

.result-container {
    background: white;
    border-radius: 20px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.08);
    overflow: hidden;
}

/* Header */
.result-header {
    padding: 50px 30px;
    text-align: center;
    border-bottom: 3px solid;
}

.result-icon {
    font-size: 72px;
    margin-bottom: 20px;
    animation: bounceIn 0.6s ease;
}

@keyframes bounceIn {
    0% { transform: scale(0); opacity: 0; }
    50% { transform: scale(1.2); }
    100% { transform: scale(1); opacity: 1; }
}

.result-title {
    font-size: 28px;
    font-weight: 800;
    color: #1f2937;
    margin: 0 0 15px 0;
}

.result-message {
    font-size: 16px;
    color: #4b5563;
    margin: 0;
    line-height: 1.6;
    max-width: 600px;
    margin: 0 auto;
}

/* Result Boxes */
.result-box {
    padding: 30px;
    border-bottom: 1px solid #f3f4f6;
}

.result-box:last-child {
    border-bottom: none;
}

.result-box h3 {
    font-size: 18px;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 20px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid #f3f4f6;
}

/* Detail Grid */
.detail-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.detail-item {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.detail-item.full-width {
    grid-column: 1 / -1;
}

.detail-label {
    font-size: 13px;
    color: #6b7280;
    font-weight: 600;
}

.detail-value {
    font-size: 15px;
    color: #1f2937;
    font-weight: 600;
}

.price-value {
    font-size: 20px;
    color: #10b981;
    font-weight: 800;
}

.detail-value code {
    background: #f3f4f6;
    padding: 4px 10px;
    border-radius: 6px;
    font-family: monospace;
    font-size: 14px;
    color: #6366f1;
}

/* Status Badge */
.status-badge {
    display: inline-block;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 700;
    color: white;
}

.status-pending { background: #f59e0b; }
.status-processing { background: #3b82f6; }
.status-completed { background: #10b981; }
.status-failed { background: #ef4444; }
.status-cancelled { background: #6b7280; }

/* Order Items */
.items-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.order-item-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    background: #f9fafb;
    border-radius: 10px;
    border: 1px solid #e5e7eb;
}

.item-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.item-name {
    font-weight: 700;
    color: #1f2937;
    font-size: 15px;
}

.item-qty {
    font-size: 13px;
    color: #6b7280;
}

.item-price {
    font-weight: 700;
    color: #1f2937;
    font-size: 15px;
}

/* Error List */
.error-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.error-list li {
    padding: 10px 15px;
    background: #fef3c7;
    border-right: 4px solid #f59e0b;
    margin-bottom: 10px;
    border-radius: 8px;
    color: #92400e;
    font-size: 14px;
}

.error-actions {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    margin-top: 20px;
}

/* Actions */
.result-actions {
    padding: 30px;
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    justify-content: center;
    background: #f9fafb;
}

/* Footer */
.result-footer {
    padding: 30px;
    background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);
}

.footer-info {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.info-item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    color: #4b5563;
}

.info-icon {
    font-size: 20px;
}

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 28px;
    border-radius: 12px;
    font-family: inherit;
    font-weight: 700;
    font-size: 15px;
    cursor: pointer;
    border: none;
    text-decoration: none;
    transition: all 0.2s;
}

.btn-primary {
    background: linear-gradient(135deg, #6366f1, #a855f7);
    color: white;
}

.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(99, 102, 241, 0.3);
}

.btn-outline {
    background: white;
    color: #6366f1;
    border: 2px solid #6366f1;
}

.btn-outline:hover {
    background: #6366f1;
    color: white;
}

.btn-large {
    padding: 16px 32px;
    font-size: 16px;
}

/* Responsive */
@media (max-width: 768px) {
    .dima-payment-result {
        padding: 20px 10px;
    }
    
    .result-header {
        padding: 30px 20px;
    }
    
    .result-icon {
        font-size: 56px;
    }
    
    .result-title {
        font-size: 22px;
    }
    
    .result-message {
        font-size: 14px;
    }
    
    .result-box {
        padding: 20px;
    }
    
    .detail-grid {
        grid-template-columns: 1fr;
    }
    
    .result-actions {
        flex-direction: column;
    }
    
    .btn {
        width: 100%;
    }
    
    .error-actions {
        flex-direction: column;
    }
}

/* Print Styles */
@media print {
    .result-actions,
    .error-actions {
        display: none;
    }
    
    .result-container {
        box-shadow: none;
    }
}
</style>

<?php do_action('dima_after_payment_result', $order_id, $payment_status); ?>