<?php
// sitemap.php - Run this to generate sitemap
header('Content-Type: application/xml; charset=utf-8');

$db = Database::getInstance();

// Get all tools
$tools = $db->fetchAll("SELECT slug, updated_at FROM tools");

// Get all articles
$articles = $db->fetchAll("SELECT slug, updated_at FROM articles WHERE status = 'published'");

$xml = '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
$xml .= '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' . "\n";

// Homepage
$xml .= '<url><loc>' . SITE_URL . '/</loc><changefreq>daily</changefreq><priority>1.0</priority></url>' . "\n";

// Tools
foreach ($tools as $tool) {
    $xml .= '<url><loc>' . SITE_URL . '/tools/' . $tool['slug'] . '/</loc><changefreq>weekly</changefreq><priority>0.8</priority><lastmod>' . date('Y-m-d', strtotime($tool['updated_at'] ?? 'now')) . '</lastmod></url>' . "\n";
}

// Articles
foreach ($articles as $article) {
    $xml .= '<url><loc>' . SITE_URL . '/articles/' . $article['slug'] . '/</loc><changefreq>monthly</changefreq><priority>0.6</priority><lastmod>' . date('Y-m-d', strtotime($article['updated_at'] ?? 'now')) . '</lastmod></url>' . "\n";
}

$xml .= '</urlset>';

echo $xml;

// Save to file
file_put_contents('sitemap.xml', $xml);
?>