<?php
require __DIR__.'/enter.php';

// params to change
//$site_root = 'http://xn----8sbjfjkdjnslt7af.xn--p1ai'; // without last '/'
$site_root = 'http://'.$_SERVER['HTTP_HOST'];
$excluded_modes = array('login');


$excluded_modes[] = 'index';

/**
 * @param $path
 * @param array $params ('priority' between 0 and 1, 'lastmod' like '2006-11-18', 'changefreq' from [always, hourly, daily, weekly, monthly, yearly, never]
 */
function createUrl($path, $params = null) {
    global $site_root;
    if ($path[0] != '/') {
        $path = '/'.$path;
    }
    ?>
    <url>
        <loc><?php echo e($site_root).e($path) ?></loc>
        <?php if (!empty($params['priority'])): ?>
            <priority><?php echo $params['priority'] ?></priority>
        <?php endif; ?>
        <?php if (!empty($params['lastmod'])): ?>
            <lastmod><?php echo date('Y-m-d', $params['lastmod']) ?></lastmod>
        <?php endif; ?>
        <?php if (!empty($params['changefreq'])): ?>
            <changefreq><?php echo $params['changefreq'] ?></changefreq>
        <?php endif; ?>
    </url>
<?php
}

header('Content-Type: application/xml');
?>
<?xml version="1.0" encoding="utf-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
    <?php
    createUrl('/');

    $r_modes = $mysqli->query("SELECT * FROM divisions") or die('could not query "divisions"');
    $n_modes = $r_modes->num_rows;
    for($i = 0; $i < $n_modes; $i++) {
        $row = $r_modes->fetch_assoc();

        if (array_search($row['alias'], $excluded_modes) === false) {
            if ($row['alias'] == 'news') {
                createUrl('/'.rawurlencode($row['alias']).'/', array('changefreq'=>'weekly'));
            } else {
                createUrl('/'.rawurlencode($row['alias']).'/');
            }

        }
    }

    $r_news_exists = $mysqli->query("SELECT * FROM divisions WHERE alias = 'news'") or die('could not query for news division');
    if ($r_news_exists->num_rows > 0) {
        $r_news = $mysqli->query("SELECT * FROM news WHERE pubdate < $now ORDER BY id ASC") or die('could not query "news"');
        $n_news = $r_news->num_rows;
        for($i = 0; $i < $n_news; $i++) {
            $row = $r_news->fetch_assoc();
            createUrl('/news/'.rawurlencode($row['slug']).'/', array('lastmod' => $row['pubdate']));
        }
    }

    $r_gallery_exists = $mysqli->query("SELECT * FROM divisions WHERE alias = 'gallery'") or die('could not query for gallery division');
    if ($r_gallery_exists->num_rows > 0) {
        $r_gallery = $mysqli->query("SELECT * FROM gallery WHERE type = 1 AND visible=1") or die('could not query "gallery"');
        $n_gallery = $r_gallery->num_rows;
        for ($i = 0; $i < $n_gallery; $i++) {
            $row = $r_gallery->fetch_assoc();
            createUrl('/gallery/?level='.$row['id']);
        }
    }
    /*
    $r_documents_exists = $mysqli->query("SELECT * FROM divisions WHERE alias = 'documents'") or die('could not query for documents division');
    if ($r_documents_exists->num_rows > 0) {
        $r_documents = $mysqli->query("SELECT * FROM documents WHERE type = 1") or die('could not query "documents"');
        $n_documents = $r_documents->num_rows;
        for ($i = 0; $i < $n_documents; $i++) {
            $row = $r_documents->fetch_assoc();
            createUrl('/documents/?level='.$row['id']);
        }
    }
    */
    /*$r_catalog_exists = $mysqli->query("SELECT * FROM divisions WHERE alias = 'catalog'") or die('could not query for catalog division');
    if ($r_catalog_exists->num_rows > 0) {
        $r_groups = $mysqli->query("SELECT * FROM groups WHERE hidden <> 1") or die('could not query "groups"');
        $n_groups = $r_groups->num_rows;
        for ($i = 0; $i < $n_groups; $i++) {
            $row = $r_groups->fetch_assoc();
            createUrl('/catalog/?group='.$row['id']);
        }

        $r_items = $mysqli->query("SELECT * FROM items WHERE hidden <> 1") or die('could not query "items"');
        $n_items = $r_items->num_rows;
        for ($i = 0; $i < $n_items; $i++) {
            $row = $r_items->fetch_assoc();
            createUrl('/catalog/?id='.$row['id']);
        }
    }*/
    ?>
</urlset>