<?php
/**
 * sitemap.xml — Sitemap dinámico generado desde la base de datos
 */
require_once __DIR__ . '/includes/config.php';
require_once __DIR__ . '/includes/funciones.php';

header('Content-Type: application/xml; charset=UTF-8');

$db = getDB();

// Páginas estáticas
$paginas = [
    ['url' => '/',          'priority' => '1.0', 'freq' => 'daily'],
    ['url' => '/planes.php','priority' => '0.8', 'freq' => 'monthly'],
];

// Categorías activas
$stmtCats = $db->query('SELECT slug, fecha_actualizacion FROM ndj_categorias WHERE activa = 1');
// Las categorías no tienen fecha_actualizacion, usar hoy
$cats = $stmtCats->fetchAll();
foreach ($cats as $cat) {
    $paginas[] = ['url' => '/categoria.php?slug=' . $cat['slug'], 'priority' => '0.7', 'freq' => 'weekly'];
}

// Comercios activos
$stmtCom = $db->query('SELECT slug, fecha_actualizacion FROM ndj_comercios WHERE activo = 1');
$comercios = $stmtCom->fetchAll();

echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' . "\n";

$hoy = date('Y-m-d');

foreach ($paginas as $p) {
    echo "  <url>\n";
    echo "    <loc>" . htmlspecialchars(SITE_URL . $p['url']) . "</loc>\n";
    echo "    <lastmod>$hoy</lastmod>\n";
    echo "    <changefreq>{$p['freq']}</changefreq>\n";
    echo "    <priority>{$p['priority']}</priority>\n";
    echo "  </url>\n";
}

foreach ($comercios as $com) {
    $fecha = substr($com['fecha_actualizacion'] ?? $hoy, 0, 10);
    echo "  <url>\n";
    echo "    <loc>" . htmlspecialchars(SITE_URL . '/comercio.php?slug=' . $com['slug']) . "</loc>\n";
    echo "    <lastmod>$fecha</lastmod>\n";
    echo "    <changefreq>weekly</changefreq>\n";
    echo "    <priority>0.6</priority>\n";
    echo "  </url>\n";
}

echo '</urlset>';
