<?php
require_once 'db.php';
$pdo = getPublicDB();

if (!function_exists('mxd_slug')) {
    function mxd_slug($s) {
        $s = strtolower(trim((string)$s));
        $s = preg_replace('/[^a-z0-9]+/', '-', $s);
        return trim($s, '-');
    }
}

$base = 'https://modernxd.com/';
$urls = [
    ['',              '1.0'],
    ['products.php',  '0.9'],
    ['Projects.php',  '0.7'],
    ['contact.php',   '0.7'],
    ['about.php',     '0.6'],
    ['faq.php',       '0.6'],
    ['blogs.php',     '0.6'],
    ['locations.php', '0.5'],
    ['ourcampus.php', '0.5'],
    ['career.php',    '0.3'],
];

if ($pdo) {
    $cats = $pdo->query("
        SELECT DISTINCT c.name FROM categories c
        JOIN products p ON p.category_id = c.id AND p.status = 'active'
    ")->fetchAll();
    foreach ($cats as $c) {
        $urls[] = ['products.php?cat=' . urlencode($c['name']), '0.7'];
    }

    $rows = $pdo->query("SELECT * FROM products WHERE status = 'active'")->fetchAll();
    foreach ($rows as $r) {
        $slug = !empty($r['slug']) ? $r['slug'] : mxd_slug($r['name']);
        $pri  = ((int)($r['focus_rank'] ?? 0) > 0) ? '0.9' : '0.8';
        $urls[] = ['product.php?slug=' . rawurlencode($slug), $pri];
    }
}

while (ob_get_level()) ob_end_clean();
header('Content-Type: application/xml; charset=UTF-8');
echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' . "\n";
foreach ($urls as [$path, $pri]) {
    echo "  <url><loc>" . htmlspecialchars($base . $path, ENT_XML1, 'UTF-8') . "</loc><priority>$pri</priority></url>\n";
}
echo '</urlset>';