<?php
/**
 * BERITA PAGE - List All News
 * Yayasan Andalusia
 */

require_once __DIR__ . '/../config/database.php';
require_once __DIR__ . '/../config/config.php';

// Pagination
$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$per_page = 9;
$offset = ($page - 1) * $per_page;

// Get category filter
$category = $_GET['category'] ?? '';

try {
    // Build query
    $query = "SELECT * FROM berita WHERE is_published = 1";
    $count_query = "SELECT COUNT(*) as total FROM berita WHERE is_published = 1";
    $params = [];
    
    if ($category) {
        $query .= " AND category = ?";
        $count_query .= " AND category = ?";
        $params[] = $category;
    }
    
    $query .= " ORDER BY published_at DESC LIMIT ? OFFSET ?";
    $params[] = $per_page;
    $params[] = $offset;
    
    $news = db_fetch_all($pdo, $query, $params);
    
    // Get total for pagination
    $total_result = db_fetch($pdo, $count_query, $category ? [$category] : []);
    $total_news = $total_result['total'];
    $total_pages = ceil($total_news / $per_page);
    
    // Get categories
    $categories = db_fetch_all($pdo, "SELECT DISTINCT category FROM berita WHERE category IS NOT NULL AND category != '' AND is_published = 1");
    
    // Get site settings
    $site_settings = db_fetch_all($pdo, "SELECT setting_key, setting_value FROM site_settings");
    $settings = [];
    foreach ($site_settings as $setting) {
        $settings[$setting['setting_key']] = $setting['setting_value'];
    }
} catch (PDOException $e) {
    error_log('Berita Page Error: ' . $e->getMessage());
    $news = [];
    $categories = [];
    $settings = [];
    $total_pages = 0;
}

$site_name = $settings['site_name'] ?? 'Yayasan Andalusia';
$page_title = 'Berita & Artikel - ' . $site_name;
?>
<!DOCTYPE html>
<html lang="id">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title><?php echo $page_title; ?></title>
    
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
    <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=Poppins:wght@300;400;500;600;700&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="<?php echo BASE_URL; ?>/assets/css/style.css">
</head>
<body>

<?php include __DIR__ . '/../includes/navbar.php'; ?>

<!-- Page Header -->
<section class="page-header bg-primary text-white py-5">
    <div class="container">
        <h1 class="display-5 fw-bold mb-3">Berita & Artikel</h1>
        <p class="lead mb-0">Update terbaru tentang kegiatan dan informasi Yayasan Andalusia</p>
    </div>
</section>

<!-- News Section -->
<section class="news-section py-5">
    <div class="container">
        <!-- Categories Filter -->
        <div class="mb-4">
            <div class="d-flex flex-wrap gap-2">
                <a href="?" class="btn btn-sm btn-<?php echo !$category ? 'primary' : 'outline-primary'; ?>">
                    Semua
                </a>
                <?php foreach ($categories as $cat): ?>
                    <a href="?category=<?php echo urlencode($cat['category']); ?>" 
                        class="btn btn-sm btn-<?php echo $category == $cat['category'] ? 'primary' : 'outline-primary'; ?>">
                        <?php echo sanitize($cat['category']); ?>
                    </a>
                <?php endforeach; ?>
            </div>
        </div>
        
        <!-- News Grid -->
        <?php if (empty($news)): ?>
            <div class="text-center py-5">
                <i class="fas fa-newspaper fa-4x text-muted mb-3"></i>
                <h5 class="text-muted">Belum ada berita</h5>
            </div>
        <?php else: ?>
            <div class="row g-4 mb-5">
                <?php foreach ($news as $item): ?>
                    <div class="col-lg-4 col-md-6">
                        <div class="news-card h-100">
                            <div class="news-image">
                                <img src="<?php echo file_exists(BERITA_UPLOAD_DIR . $item['image']) ? BERITA_UPLOAD_URL . sanitize($item['image']) : BASE_URL . '/assets/images/default-news.jpg'; ?>" 
                                        alt="<?php echo sanitize($item['title']); ?>" class="img-fluid">
                                <?php if (!empty($item['category'])): ?>
                                    <span class="news-badge badge bg-<?php echo $item['category'] == 'Berita' ? 'success' : 'warning'; ?>">
                                        <?php echo sanitize($item['category']); ?>
                                    </span>
                                <?php endif; ?>
                            </div>
                            <div class="news-body p-4">
                                <div class="news-meta mb-2">
                                    <span class="text-muted small">
                                        <i class="far fa-calendar me-1"></i>
                                        <?php echo format_date($item['published_at'], 'd M Y'); ?>
                                    </span>
                                    <span class="text-muted small ms-3">
                                        <i class="far fa-eye me-1"></i>
                                        <?php echo $item['views']; ?> views
                                    </span>
                                </div>
                                <h5 class="news-title mb-3">
                                    <a href="berita-detail.php?slug=<?php echo sanitize($item['slug']); ?>" class="text-decoration-none text-dark">
                                        <?php echo sanitize($item['title']); ?>
                                    </a>
                                </h5>
                                <p class="news-excerpt text-muted mb-3"><?php echo truncate(sanitize($item['excerpt']), 120); ?></p>
                                <a href="berita-detail.php?slug=<?php echo sanitize($item['slug']); ?>" class="btn btn-outline-primary btn-sm">
                                    Baca Selengkapnya <i class="fas fa-arrow-right ms-2"></i>
                                </a>
                            </div>
                        </div>
                    </div>
                <?php endforeach; ?>
            </div>
            
            <!-- Pagination -->
            <?php if ($total_pages > 1): ?>
                <nav>
                    <ul class="pagination justify-content-center">
                        <?php if ($page > 1): ?>
                            <li class="page-item">
                                <a class="page-link" href="?page=<?php echo $page - 1; ?><?php echo $category ? '&category=' . urlencode($category) : ''; ?>">
                                    <i class="fas fa-chevron-left"></i>
                                </a>
                            </li>
                        <?php endif; ?>
                        
                        <?php for ($i = 1; $i <= $total_pages; $i++): ?>
                            <li class="page-item <?php echo $i == $page ? 'active' : ''; ?>">
                                <a class="page-link" href="?page=<?php echo $i; ?><?php echo $category ? '&category=' . urlencode($category) : ''; ?>">
                                    <?php echo $i; ?>
                                </a>
                            </li>
                        <?php endfor; ?>
                        
                        <?php if ($page < $total_pages): ?>
                            <li class="page-item">
                                <a class="page-link" href="?page=<?php echo $page + 1; ?><?php echo $category ? '&category=' . urlencode($category) : ''; ?>">
                                    <i class="fas fa-chevron-right"></i>
                                </a>
                            </li>
                        <?php endif; ?>
                    </ul>
                </nav>
            <?php endif; ?>
        <?php endif; ?>
    </div>
</section>

<?php include __DIR__ . '/../includes/footer.php'; ?>

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
<script src="<?php echo BASE_URL; ?>/assets/js/main.js"></script>

</body>
</html>