<?php
/**
 * packages_list.php - সিস্টেম মোড অনুযায়ী ফিল্টার করা প্যাকেজ লিস্ট
 */

// সেশন স্টার্ট নিশ্চিত করুন (যদি আগে না করা থাকে)
if (session_status() === PHP_SESSION_NONE) {
    session_start();
}

if (!isset($conn)) {
    include('db_config.php');
}

// সরাসরি 'package_mode' টেবিল থেকে বর্তমান মোড সংগ্রহ করা
$mode_query = mysqli_query($conn, "SELECT package_mode_type FROM package_mode WHERE id=1");
$mode_data = mysqli_fetch_assoc($mode_query);
$current_system_mode = ($mode_data) ? $mode_data['package_mode_type'] : 'both';

// SQL কোয়েরি তৈরি: সিস্টেম মোড 'both' না হলে নির্দিষ্ট টাইপ অনুযায়ী ডেটা আনা হবে
$where_clause = "";
if ($current_system_mode !== 'both') {
    $where_clause = " WHERE type = '$current_system_mode' ";
}

$limit_sql = isset($limit) ? " LIMIT $limit" : "";

// চূড়ান্ত কোয়েরি
$sql = "SELECT * FROM packages $where_clause ORDER BY price ASC" . $limit_sql;
$result = mysqli_query($conn, $sql);
?>
<link rel="stylesheet" href="assets/css/style.css">

<section class="packages-section">
    <div class="section-header">
        <h2 style="font-size: 2.2rem; text-align: center;">আমাদের<span style="color:var(--primary-color);"> ইন্টারনেট </span>প্যাকেজসমূহ</h2>
        <span style="display: block; width: 80px; height: 5px; background: var(--primary-color); margin: 10px auto;"></span>

        <?php if ($current_system_mode == 'both'): ?>
            <div class="filter-container">
                <button id="btn-all" class="filter-btn active" onclick="filterPackages('all', event)">All Packages</button>
                <button id="btn-home" class="filter-btn" onclick="filterPackages('home', event)">Home User</button>
                <button id="btn-corporate" class="filter-btn" onclick="filterPackages('corporate', event)">Corporate User</button>
            </div>
        <?php endif; ?>

        <div class="package-grid" id="packageGrid">
            <?php 
            if ($result && mysqli_num_rows($result) > 0):
                while($pkg = mysqli_fetch_assoc($result)): 
                    $features = explode(',', $pkg['features']);
                    preg_match('/\d+/', $pkg['speed'], $matches);
                    $speed_val = isset($matches[0]) ? $matches[0] : '0';
                    $pkg_type = isset($pkg['type']) ? $pkg['type'] : 'home'; 
                    $is_featured = (isset($pkg['featured']) && $pkg['featured'] == 1);
                    
                    $show_vat = (isset($pkg['vat_status']) && $pkg['vat_status'] == 1);
                    $vat_label = "";
                    if($show_vat) {
                        $prefix = ($pkg['vat_type'] == 'include') ? "" : "+ ";
                        $vat_label = $prefix . $pkg['vat_percent'] . "% VAT";
                        
                        if($pkg['vat_type'] == 'include') {
                            $vat_label .= " (Inc.)";
                        } elseif ($pkg['vat_type'] == 'exclude') {
                            $vat_label .= " (Exc.)";
                        }
                    }
            ?>
                <div class="flip-card intp-package-item <?php echo $is_featured ? 'is-featured' : ''; ?>" data-type="<?php echo $pkg_type; ?>">
                    <div class="flip-card-inner">
                        <div class="flip-card-front">
                            <?php if($is_featured): ?>
                                <div class="popular-badge">POPULAR</div>
                            <?php endif; ?>
                            <div class="speed-box">
                                <h2 style="font-size: 2.8rem !important;"><?php echo $speed_val; ?></h2>
                                <span>Mbps</span>
                            </div>
                            <h3 style="margin:0;"><?php echo htmlspecialchars($pkg['name']); ?></h3>
                            <div class="price-info">
                                <div class="price-text">@ <?php echo number_format($pkg['price'], 0); ?> BDT</div>
                                <?php if($show_vat): ?>
                                    <div class="vat-text"><?php echo $vat_label; ?></div>
                                <?php endif; ?>
                            </div>
                        </div>
                        <div class="flip-card-back">
                            <h3><?php echo htmlspecialchars($pkg['name']); ?></h3>
                            <ul>
                                <li><i class="fas fa-bolt"></i> স্পিড: <?php echo htmlspecialchars($pkg['speed']); ?></li>
                                <?php foreach($features as $f): if(trim($f)!=""): ?>
                                    <li><i class="fas fa-check-circle"></i> <?php echo htmlspecialchars(trim($f)); ?></li>
                                <?php endif; endforeach; ?>
                            </ul>
                            <a href="registration.php?pkg=<?php echo urlencode($pkg['name']); ?>" class="register-btn">অর্ডার করুন</a>
                            <?php if($show_vat): ?>
                                <div class="vat-text-back"><?php echo $vat_label; ?></div>
                            <?php endif; ?>
                        </div>
                    </div>
                </div>
            <?php endwhile; 
            else: ?>
                <div style="grid-column: 1 / -1; padding: 50px; background: #eee; border-radius: 15px;">
                    <h3>দুঃখিত! এই মুহূর্তে কোনো প্যাকেজ উপলব্ধ নেই।</h3>
                </div>
            <?php endif; ?>
        </div>
    </div>
</section>

<script>
function filterPackages(type, event) {
    const buttons = document.querySelectorAll('.filter-btn');
    buttons.forEach(btn => btn.classList.remove('active'));
    
    if(event && event.currentTarget) {
        event.currentTarget.classList.add('active');
    } else {
        const targetBtn = document.getElementById('btn-' + type);
        if(targetBtn) targetBtn.classList.add('active');
    }

    const items = document.querySelectorAll('.intp-package-item');
    const filterType = type.toLowerCase();

    items.forEach(item => {
        const itemType = item.getAttribute('data-type').toLowerCase();
        item.classList.add('hide');
        
        setTimeout(() => {
            if (filterType === 'all' || itemType === filterType) {
                item.style.display = 'block';
                setTimeout(() => {
                    item.classList.remove('hide');
                }, 50);
            } else {
                item.style.display = 'none';
            }
        }, 300);
    });
}

// ফাংশন যা হ্যাশ চেক করে ফিল্টার কল করবে
function checkHashAndFilter() {
    const hash = window.location.hash.replace('#', '').toLowerCase();
    if (hash === 'home' || hash === 'corporate' || hash === 'all') {
        filterPackages(hash, null);
        
        const section = document.querySelector('.packages-section');
        if(section) {
            section.scrollIntoView({ behavior: 'smooth' });
        }
    }
}

// পেজ লোড হওয়ার সময় চেক করবে
window.addEventListener('DOMContentLoaded', checkHashAndFilter);

// পেজ খোলা থাকা অবস্থায় ইউআরএল হ্যাশ পরিবর্তন হলে (ক্লিক করলে) চেক করবে
window.addEventListener('hashchange', checkHashAndFilter);
</script>