<?php
/**
 * Динамический sitemap.xml для CS2LAND
 * Генерирует карту сайта на основе доступных модулей и страниц
 */

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

// Подключаем основные константы
define('IN_LR', true);
define('APP', __DIR__ . '/app/');
define('MODULES', APP . 'modules/');
define('SESSIONS', APP . 'logs/');

// Базовый URL сайта
$site_url = 'https://cs2land.net';

// Получаем список активных модулей
$modules = [];
if (file_exists(SESSIONS . 'modules_cache.php')) {
    $modules = require SESSIONS . 'modules_cache.php';
}

// Получаем инициализацию модулей для страниц
$module_init = [];
if (file_exists(SESSIONS . 'modules_initialization.php')) {
    $module_init = require SESSIONS . 'modules_initialization.php';
}

// Начинаем XML
echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' . "\n";

// Главная страница (высший приоритет)
echo "  <url>\n";
echo "    <loc>{$site_url}/</loc>\n";
echo "    <lastmod>" . date('Y-m-d') . "</lastmod>\n";
echo "    <changefreq>daily</changefreq>\n";
echo "    <priority>1.0</priority>\n";
echo "  </url>\n";

// Собираем уникальные страницы из модулей
$pages = [];
if (!empty($module_init['page'])) {
    foreach ($module_init['page'] as $page_name => $page_data) {
        if ($page_name === 'home') continue; // Главную уже добавили
        
        // Определяем приоритет и частоту обновления
        $priority = '0.8';
        $changefreq = 'weekly';
        
        // Высокий приоритет для ключевых страниц
        if (in_array($page_name, ['store', 'help', 'profiles', 'leaderboard', 'vip-benefits', 'modes', 'guides'])) {
            $priority = '0.9';
            $changefreq = 'daily';
        }
        
        // Средний приоритет для остальных публичных страниц
        if (in_array($page_name, ['rules', 'oferta', 'faq', 'terms'])) {
            $priority = '0.7';
            $changefreq = 'monthly';
        }
        
        // Пропускаем админские и служебные страницы
        if (in_array($page_name, ['adminpanel', 'managersystem', 'admin_statistics', 'mon_settings', 'giveaway_settings', 'security_audit'])) {
            continue;
        }
        
        $pages[$page_name] = [
            'priority' => $priority,
            'changefreq' => $changefreq
        ];
    }
}

// Добавляем страницы в sitemap
foreach ($pages as $page_name => $page_config) {
    echo "  <url>\n";
    echo "    <loc>{$site_url}/{$page_name}/</loc>\n";
    echo "    <lastmod>" . date('Y-m-d') . "</lastmod>\n";
    echo "    <changefreq>{$page_config['changefreq']}</changefreq>\n";
    echo "    <priority>{$page_config['priority']}</priority>\n";
    echo "  </url>\n";
}

// Добавляем дополнительные важные URL-ы
$additional_urls = [
    ['url' => '/2048/', 'priority' => '0.5', 'changefreq' => 'monthly'],
    ['url' => '/achievements/', 'priority' => '0.6', 'changefreq' => 'weekly'],
    ['url' => '/battlepass/', 'priority' => '0.7', 'changefreq' => 'weekly'],
    ['url' => '/clans/', 'priority' => '0.7', 'changefreq' => 'weekly'],
    ['url' => '/daily_rewards/', 'priority' => '0.6', 'changefreq' => 'daily'],
    ['url' => '/open_case/', 'priority' => '0.7', 'changefreq' => 'daily'],
    ['url' => '/referral/', 'priority' => '0.6', 'changefreq' => 'weekly'],
    ['url' => '/skins/', 'priority' => '0.8', 'changefreq' => 'weekly'],
    ['url' => '/weapons/', 'priority' => '0.7', 'changefreq' => 'monthly'],
];

foreach ($additional_urls as $url_data) {
    echo "  <url>\n";
    echo "    <loc>{$site_url}{$url_data['url']}</loc>\n";
    echo "    <lastmod>" . date('Y-m-d') . "</lastmod>\n";
    echo "    <changefreq>{$url_data['changefreq']}</changefreq>\n";
    echo "    <priority>{$url_data['priority']}</priority>\n";
    echo "  </url>\n";
}

echo "</urlset>\n";

