<?php
require 'config.php';
require_login();

// --- সিস্টেম আপডেট: অ্যাডমিন প্যানেলের চার্জ এবং সার্ভিস স্ট্যাটাস ডাইনামিক করা হয়েছে ---
$cost_api1 = isset($settings['server_copy_charge']) ? (float)$settings['server_copy_charge'] : 40.0;

// সার্ভিস স্ট্যাটাস চেক (১ মানে চালু, ০ মানে বন্ধ)
$is_service_active = isset($settings['api_service_status']) ? (int)$settings['api_service_status'] : 1;

// Fetch History
$stmt = $pdo->prepare("SELECT * FROM server_copy WHERE user_id = ? ORDER BY id DESC LIMIT 20");
$stmt->execute([$_SESSION['user_id']]);
$history = $stmt->fetchAll();

require_once 'header.php';
?>

<style>
    /* ========== PREMIUM THEME ========== */
    :root {
        --primary: #6C3FAA;
        --primary-dark: #4B2A7A;
        --accent: #FF9F43;
        --bg-light: #F8F5FD;
        --card-bg: #FFFFFF;
        --text-dark: #1E1135;
        --text-muted: #6C6A7A;
        --border: #E2DEF0;
        --success: #10B981;
        --warning: #F59E0B;
        --danger: #EF4444;
        --shadow-sm: 0 4px 15px rgba(108, 63, 170, 0.08);
        --shadow-md: 0 8px 25px rgba(108, 63, 170, 0.12);
        --shadow-lg: 0 12px 40px rgba(108, 63, 170, 0.2);
        --radius: 20px;
        --transition: all 0.3s ease;
    }

    body {
        background: linear-gradient(135deg, #F5F0FF 0%, #EDE4FB 100%);
        color: var(--text-dark);
        font-family: 'Hind Siliguri', sans-serif;
    }

    .premium-container {
        max-width: 1000px;
        margin: 0 auto;
        padding: 2rem 1.5rem;
    }

    /* Loading Overlay */
    #loddingPdf {
        position: fixed;
        inset: 0;
        background: rgba(30, 17, 53, 0.95);
        backdrop-filter: blur(8px);
        z-index: 9999;
        display: none;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        color: white;
    }
    .spinner-ring {
        width: 60px; height: 60px;
        border: 5px solid rgba(255,255,255,0.1);
        border-top-color: var(--accent);
        border-radius: 50%;
        animation: spin 1s linear infinite;
    }
    @keyframes spin { 100% { transform: rotate(360deg); } }

    /* Hero Header */
    .hero-header {
        background: linear-gradient(135deg, #7B4DC7 0%, #542E90 100%);
        border-radius: var(--radius);
        padding: 2rem 2.5rem;
        color: white;
        text-align: center;
        box-shadow: var(--shadow-md);
        margin-bottom: 2.5rem;
        position: relative;
        overflow: hidden;
    }
    .hero-header::after {
        content: '';
        position: absolute;
        width: 200px;
        height: 200px;
        background: rgba(255,255,255,0.05);
        border-radius: 50%;
        top: -50px;
        right: -50px;
    }
    .hero-icon {
        background: rgba(255,255,255,0.15);
        backdrop-filter: blur(10px);
        padding: 1.2rem;
        border-radius: 50%;
        font-size: 2.5rem;
        display: inline-block;
        margin-bottom: 1rem;
    }
    .hero-header h2 {
        font-size: 1.8rem;
        font-weight: 700;
    }
    .hero-header p {
        opacity: 0.9;
        margin-bottom: 0;
    }

    /* Admin Notice */
    .admin-live-notice {
        background: var(--primary);
        border-left: 5px solid var(--accent);
        color: #fff;
        padding: 15px 20px;
        border-radius: 12px;
        margin-bottom: 2rem;
        box-shadow: var(--shadow-sm);
        display: flex;
        align-items: center;
        gap: 15px;
    }

    /* Maintenance Card */
    .maintenance-card {
        background: var(--card-bg);
        border: 2px dashed var(--danger);
        padding: 3rem;
        text-align: center;
        border-radius: var(--radius);
        margin-bottom: 2rem;
        box-shadow: var(--shadow-sm);
    }

    /* Premium Card */
    .premium-card {
        background: var(--card-bg);
        border-radius: var(--radius);
        padding: 2rem;
        box-shadow: var(--shadow-sm);
        border: 1px solid var(--border);
        margin-bottom: 2rem;
        transition: var(--transition);
    }
    .premium-card:hover {
        box-shadow: var(--shadow-md);
    }

    .form-header {
        text-align: center;
        margin-bottom: 2rem;
        padding-bottom: 1.5rem;
        border-bottom: 1px solid var(--border);
    }
    .cost-badge {
        background: #F1ECFB;
        color: var(--primary);
        padding: 8px 20px;
        border-radius: 50px;
        font-weight: 700;
        display: inline-block;
        margin-top: 1rem;
    }

    .form-label {
        font-weight: 600;
        color: var(--text-dark);
        margin-bottom: 8px;
        display: flex;
        align-items: center;
        gap: 6px;
    }
    .form-control {
        width: 100%;
        padding: 12px 16px;
        border: 1px solid var(--border);
        border-radius: 12px;
        font-size: 1rem;
        transition: var(--transition);
        background: white;
    }
    .form-control:focus {
        border-color: var(--primary);
        box-shadow: 0 0 0 4px rgba(108,63,170,0.1);
        outline: none;
    }

    .btn-premium {
        background: linear-gradient(135deg, #7B4DC7, #542E90);
        border: none;
        color: white;
        padding: 14px 24px;
        border-radius: 14px;
        font-weight: 700;
        font-size: 1.1rem;
        width: 100%;
        cursor: pointer;
        transition: all 0.3s;
        box-shadow: 0 8px 20px rgba(108,63,170,0.3);
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }
    .btn-premium:hover {
        transform: translateY(-2px);
        box-shadow: 0 12px 25px rgba(108,63,170,0.4);
        background: linear-gradient(135deg, #8A5ED4, #6337A0);
    }

    /* Table */
    .table-premium {
        width: 100%;
        border-collapse: collapse;
    }
    .table-premium thead {
        background: linear-gradient(135deg, #5A3A8A, #402568);
        color: white;
    }
    .table-premium th {
        padding: 16px 20px;
        font-weight: 600;
        text-align: left;
    }
    .table-premium td {
        padding: 16px 20px;
        border-bottom: 1px solid var(--border);
        vertical-align: middle;
    }
    .table-premium tbody tr:hover {
        background: #FCF9FF;
    }
    .nid-badge {
        background: #F1ECFB;
        padding: 4px 12px;
        border-radius: 8px;
        font-family: monospace;
        font-weight: 600;
        color: var(--primary-dark);
    }
    .btn-download {
        background: var(--primary);
        color: white !important;
        text-decoration: none;
        padding: 6px 16px;
        border-radius: 8px;
        font-weight: 600;
        transition: var(--transition);
        display: inline-block;
    }
    .btn-download:hover {
        background: var(--primary-dark);
        transform: scale(1.05);
    }

    @media (max-width: 768px) {
        .table-premium thead { display: none; }
        .table-premium tr { display: block; border: 1px solid var(--border); border-radius: 12px; margin-bottom: 15px; padding: 10px; background: white; }
        .table-premium td { display: flex; justify-content: space-between; border: none; padding: 10px 5px; text-align: right; }
        .table-premium td::before { content: attr(data-label); font-weight: 700; color: var(--primary); float: left; }
    }
</style>

<div id="loddingPdf">
    <div class="spinner-ring mb-3"></div>
    <h5 class="fw-bold">তথ্য যাচাই করা হচ্ছে...</h5>
    <p class="small" style="opacity: 0.8;">অনুগ্রহ করে কিছুক্ষণ অপেক্ষা করুন</p>
</div>

<div class="premium-container">
    <!-- Hero Header -->
    <div class="hero-header">
        <div class="hero-icon">
            <i class="fas fa-id-card"></i>
        </div>
        <h2>সার্ভার কপি ডাউনলোড</h2>
        <p>এনআইডি নম্বর ও জন্ম তারিখ দিয়ে নিরাপদে তথ্য খুঁজুন</p>
    </div>

    <?php if (!empty($settings['service_page_notice'])): ?>
        <div class="admin-live-notice">
            <i class="fas fa-bullhorn fa-lg" style="color: var(--accent);"></i>
            <div>
                <strong>জরুরী নোটিশ:</strong> <?php echo h($settings['service_page_notice']); ?>
            </div>
        </div>
    <?php endif; ?>

    <?php if ($is_service_active == 1): ?>
        <div class="premium-card">
            <div class="form-header">
                <i class="fas fa-cloud-download-alt fa-3x mb-3" style="color: var(--primary);"></i>
                <h3 class="mb-2 fw-bold" style="color: var(--primary-dark);">সার্ভার কপি ফর্ম</h3>
                <p class="text-muted">সঠিক তথ্য প্রদান করে দ্রুত ডাউনলোড সম্পন্ন করুন</p>
                <div class="cost-badge">
                    <i class="fas fa-wallet me-1"></i> চার্জ: ৳ <?php echo number_format($cost_api1, 2); ?>
                </div>
            </div>

            <form id="serverCopyForm" autocomplete="off">
                <div class="row" style="display: flex; gap: 20px; margin-bottom: 1.5rem;">
                    <div style="flex: 1;">
                        <label class="form-label"><i class="fas fa-fingerprint"></i> জাতীয় পরিচয়পত্র নম্বর (NID)</label>
                        <input type="tel" name="nid" id="nidNumber" class="form-control" placeholder="১০ বা ১৭ ডিজিটের এনআইডি" maxlength="17" required>
                    </div>
                    <div style="flex: 1;">
                        <label class="form-label"><i class="fas fa-calendar-alt"></i> জন্ম তারিখ (YYYY-MM-DD)</label>
                        <input type="tel" name="dob" id="dateOfBirth" class="form-control" placeholder="উদাহরণ: 1990-01-01" maxlength="10" required>
                    </div>
                </div>
                <button type="submit" id="submitButton" class="btn-premium">
                    <i class="fas fa-search-plus"></i> তথ্য যাচাই ও ডাউনলোড করুন
                </button>
            </form>
        </div>
    <?php else: ?>
        <div class="maintenance-card">
            <i class="fas fa-tools fa-4x mb-3" style="color: var(--primary);"></i>
            <h3 class="fw-bold text-dark">সার্ভিসটি বর্তমানে বন্ধ আছে</h3>
            <p class="text-muted">সিস্টেম আপডেটের কাজ চলছে। অনুগ্রহ করে কিছুক্ষণ পর আবার চেষ্টা করুন।</p>
            <a href="index.php" class="btn btn-premium w-auto px-5" style="display: inline-block; width: auto;">হোমে ফিরে যান</a>
        </div>
    <?php endif; ?>

    <!-- Recent Downloads -->
    <div style="margin-top: 2.5rem;">
        <h5 style="color: var(--primary); border-left: 5px solid var(--primary); padding-left: 15px; font-weight: 800;">
            সাম্প্রতিক ডাউনলোড তালিকা
        </h5>
        <div class="premium-card p-0 overflow-hidden" style="padding: 0;">
            <?php if ($history): ?>
                <div class="table-responsive">
                    <table class="table-premium">
                        <thead>
                            <tr>
                                <th>নাম (English)</th>
                                <th>NID নম্বর</th>
                                <th>তৈরির সময়</th>
                                <th class="text-end">অ্যাকশন</th>
                            </tr>
                        </thead>
                        <tbody>
                            <?php foreach ($history as $item): ?>
                                <tr>
                                    <td data-label="নাম"><strong style="color: var(--primary-dark);"><?php echo htmlspecialchars($item['nameEn'] ?? $item['nameBn'] ?? 'Unknown'); ?></strong></td>
                                    <td data-label="NID"><span class="nid-badge"><?php echo htmlspecialchars($item['nationalId']); ?></span></td>
                                    <td data-label="তারিখ"><span class="text-muted small"><?php echo date('d M, Y h:i A', strtotime($item['created_at'])); ?></span></td>
                                    <td data-label="অ্যাকশন" class="text-end">
                                        <a href="server_copy_download.php?id=<?php echo $item['id']; ?>" class="btn-download" target="_blank">
                                            <i class="fas fa-cloud-download-alt me-1"></i> PDF
                                        </a>
                                    </td>
                                </tr>
                            <?php endforeach; ?>
                        </tbody>
                    </table>
                </div>
            <?php else: ?>
                <div class="text-center py-5">
                    <i class="fas fa-folder-open fa-3x mb-3" style="color: #D1CAE5;"></i>
                    <p class="text-muted">এখনো কোনো তথ্য ডাউনলোড করা হয়নি</p>
                </div>
            <?php endif; ?>
        </div>
    </div>
</div>

<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // --- সিস্টেম আপডেট: এডমিন নোটিশ পপআপ ---
    <?php if (!empty($settings['service_page_notice'])): ?>
        Swal.fire({
            title: 'জরুরী ঘোষণা!',
            html: `<div style="text-align: left; font-size: 16px; line-height: 1.6; color: #1E1135;">
                    <?php echo str_replace(["\r", "\n"], " ", h($settings['service_page_notice'])); ?>
                   </div>`,
            icon: 'info',
            confirmButtonText: 'ঠিক আছে',
            confirmButtonColor: '#6C3FAA',
            allowOutsideClick: false
        });
    <?php endif; ?>

    const form = document.getElementById('serverCopyForm');
    if (!form) return; 

    const loading = document.getElementById('loddingPdf');
    const nidInput = document.getElementById('nidNumber');
    const dobInput = document.getElementById('dateOfBirth');

    // Date Auto Format (YYYY-MM-DD)
    dobInput.addEventListener('input', function(e) {
        let v = this.value.replace(/\D/g, ''); 
        if (v.length > 8) v = v.substring(0, 8);
        if (v.length > 4) v = v.substring(0, 4) + '-' + v.substring(4);
        if (v.length > 7) v = v.substring(0, 7) + '-' + v.substring(7);
        this.value = v;
    });

    nidInput.addEventListener('input', function() {
        this.value = this.value.replace(/[^0-9]/g, '');
    });

    form.addEventListener('submit', function(e) {
        e.preventDefault();
        
        const nid = nidInput.value.trim();
        const dob = dobInput.value.trim();

        if (nid.length !== 10 && nid.length !== 17) {
            Swal.fire({
                title: 'ভুল এনআইডি!',
                text: 'NID নম্বর ১০ অথবা ১৭ ডিজিট হতে হবে।',
                icon: 'error',
                confirmButtonColor: '#6C3FAA'
            });
            return;
        }

        Swal.fire({
            title: 'চার্জ নিশ্চিত করুন',
            text: `সার্ভার কপি অনুসন্ধানের জন্য আপনার অ্যাকাউন্ট থেকে ৳${<?php echo $cost_api1; ?>} কেটে নেওয়া হবে।`,
            icon: 'question',
            showCancelButton: true,
            confirmButtonColor: '#6C3FAA',
            cancelButtonColor: '#EF4444',
            confirmButtonText: 'হ্যাঁ, চার্জ কাটুন',
            cancelButtonText: 'বাতিল'
        }).then((result) => {
            if (result.isConfirmed) {
                loading.style.display = 'flex';
                
                fetch('server_copy_handler.php', {
                    method: 'POST',
                    headers: { 'Content-Type': 'application/json' },
                    body: JSON.stringify({ nid, dob, version: '1' })
                })
                .then(response => response.json())
                .then(data => {
                    loading.style.display = 'none';
                    if (data.success) {
                        Swal.fire({
                            title: 'সফল!',
                            text: 'তথ্য খুঁজে পাওয়া গেছে।',
                            icon: 'success',
                            confirmButtonColor: '#6C3FAA'
                        }).then(() => location.reload());
                    } else {
                        Swal.fire({
                            title: 'ব্যর্থ!',
                            text: data.message || 'কোনো তথ্য পাওয়া যায়নি',
                            icon: 'error',
                            confirmButtonColor: '#6C3FAA'
                        });
                    }
                })
                .catch(error => {
                    loading.style.display = 'none';
                    Swal.fire('ত্রুটি!', 'সার্ভারে সংযোগ বিচ্ছিন্ন হয়েছে।', 'error');
                });
            }
        });
    });
});
</script>

<?php require_once 'footer.php'; ?>