<?php
declare(strict_types=1);

require_once __DIR__ . '/../private/db_config.php';

header('Content-Type: application/xml; charset=utf-8');
header('Cache-Control: public, max-age=600');

$base = 'https://products.zenaconsult.com';

$conn = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
if ($conn->connect_error) {
    http_response_code(500);
    echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\"></urlset>";
    exit;
}
$conn->set_charset('utf8mb4');

// Categories per market
$cats = [
    'it' => [],
    'uk' => [],
];
foreach (['it', 'uk'] as $m) {
    $stmt = $conn->prepare("SELECT DISTINCT category FROM products WHERE market = ? AND category IS NOT NULL AND category <> '' ORDER BY category ASC");
    if ($stmt) {
        $stmt->bind_param('s', $m);
        $stmt->execute();
        if (method_exists($stmt, 'get_result')) {
            $res = $stmt->get_result();
            $rows = $res ? $res->fetch_all(MYSQLI_ASSOC) : [];
            foreach ($rows as $r) {
                $c = trim((string)($r['category'] ?? ''));
                if ($c !== '') $cats[$m][] = $c;
            }
        } else {
            $stmt->store_result();
            $stmt->bind_result($c);
            while ($stmt->fetch()) {
                $c = trim((string)$c);
                if ($c !== '') $cats[$m][] = $c;
            }
        }
        $stmt->close();
    }
}
$conn->close();

$urls = [];

// Main catalog pages (grouped, category sort default)
$urls[] = $base . '/catalog.php?v=20260427&lang=it&market=it&sort=category&group=1';
$urls[] = $base . '/catalog.php?v=20260427&lang=en&market=uk&sort=category&group=1';

// Category landing pages
foreach ($cats['it'] as $c) {
    $urls[] = $base . '/catalog.php?v=20260427&lang=it&market=it&sort=category&group=1&cat=' . rawurlencode($c);
}
foreach ($cats['uk'] as $c) {
    $urls[] = $base . '/catalog.php?v=20260427&lang=en&market=uk&sort=category&group=1&cat=' . rawurlencode($c);
}

echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
echo "<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">\n";
foreach ($urls as $u) {
    echo "  <url><loc>" . htmlspecialchars($u, ENT_QUOTES | ENT_XML1, 'UTF-8') . "</loc></url>\n";
}
echo "</urlset>\n";

