<?php
declare(strict_types=1);
require_once __DIR__ . '/../app/Data.php';
require_once __DIR__ . '/../app/Artigo.php';
use App\Data;

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';

echo '<url><loc>' . htmlspecialchars((isset($_SERVER['HTTP_HOST'])? 'http://'.$_SERVER['HTTP_HOST'] : 'http://localhost') . '/') . '</loc></url>\n';
echo '<url><loc>' . htmlspecialchars((isset($_SERVER['HTTP_HOST'])? 'http://'.$_SERVER['HTTP_HOST'] : 'http://localhost') . '/podcast.php') . '</loc></url>\n';
echo '<url><loc>' . htmlspecialchars((isset($_SERVER['HTTP_HOST'])? 'http://'.$_SERVER['HTTP_HOST'] : 'http://localhost') . '/artigos.php') . '</loc></url>\n';

// Buscar artigos do banco de dados
$artigosObj = Artigo::listarTodos('publicado');
$articles = array_map(fn($artigo) => $artigo->toArray(), $artigosObj);

foreach ($articles as $a) {
    echo '<url><loc>' . htmlspecialchars((isset($_SERVER['HTTP_HOST'])? 'http://'.$_SERVER['HTTP_HOST'] : 'http://localhost') . '/artigo.php?slug=' . $a['slug']) . '</loc></url>\n';
}

foreach (Data::podcasts() as $p) {
    echo '<url><loc>' . htmlspecialchars((isset($_SERVER['HTTP_HOST'])? 'http://'.$_SERVER['HTTP_HOST'] : 'http://localhost') . '/podcast.php?ep=' . $p['slug']) . '</loc></url>\n';
}

echo '</urlset>';
