<?php
declare(strict_types=1);

require_once 'db.php';

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

$baseUrl = 'https://www.nfcmedya.com.tr';

$staticPages = [
    [
        'url' => '/',
        'priority' => '1.0'
    ],
    [
        'url' => '/kurumsal/hakkimizda',
        'priority' => '0.9'
    ],
    [
        'url' => '/kurumsal/vizyon-misyon',
        'priority' => '0.9'
    ],
    [
        'url' => '/hizmetler/web-tasarim',
        'priority' => '0.9'
    ],
    [
        'url' => '/hizmetler/grafik-tasarim',
        'priority' => '0.9'
    ],
    [
        'url' => '/hizmetler/video-produksiyon',
        'priority' => '0.9'
    ],
    [
        'url' => '/hizmetler/sosyal-medya',
        'priority' => '0.9'
    ],
    [
        'url' => '/hizmetler/seo',
        'priority' => '0.9'
    ],
    [
        'url' => '/hizmetler/acik-hava-reklam',
        'priority' => '0.9'
    ],
    [
        'url' => '/proje',
        'priority' => '0.8'
    ],
    [
        'url' => '/blog',
        'priority' => '0.8'
    ],
    [
        'url' => '/iletisim',
        'priority' => '0.8'
    ],
    [
        'url' => '/kvkk',
        'priority' => '0.3'
    ]
];

echo '<?xml version="1.0" encoding="UTF-8"?>';
?>

<urlset
    xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

<?php foreach ($staticPages as $page): ?>
<url>
    <loc><?= htmlspecialchars($baseUrl . $page['url'], ENT_QUOTES, 'UTF-8') ?></loc>
    <lastmod><?= date('c') ?></lastmod>
    <changefreq>weekly</changefreq>
    <priority><?= $page['priority'] ?></priority>
</url>
<?php endforeach; ?>

<?php
try {

    $stmt = $pdo->query("
        SELECT id
        FROM proje
        ORDER BY id DESC
    ");

    $projects = $stmt->fetchAll(PDO::FETCH_ASSOC);

    foreach ($projects as $project):

        $projectId = (int)$project['id'];
?>

<url>
    <loc><?= htmlspecialchars($baseUrl . '/proje-detay.php?id=' . $projectId, ENT_QUOTES, 'UTF-8') ?></loc>
    <lastmod><?= date('c') ?></lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
</url>

<?php
    endforeach;

} catch (PDOException $e) {
    error_log('Sitemap proje hatası: ' . $e->getMessage());
}

try {
    $stmt = $pdo->query("SELECT slug, updated_at FROM blog_yazilari WHERE durum = 'yayinlandi' ORDER BY created_at DESC");
    $blogYazilari = $stmt->fetchAll(PDO::FETCH_ASSOC);

    foreach ($blogYazilari as $by):
?>

<url>
    <loc><?= htmlspecialchars($baseUrl . '/blog/' . $by['slug'], ENT_QUOTES, 'UTF-8') ?></loc>
    <lastmod><?= date('c', strtotime((string)$by['updated_at'])) ?></lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
</url>

<?php
    endforeach;
} catch (PDOException $e) {
    error_log('Sitemap blog hatası: ' . $e->getMessage());
}
?>

</urlset>