<?php

define('_CONSTANT_', 1);

require_once '../../core/start.php';

checkAuth();

head('Подземелья' , 'Подземелья');

switch ($do) 
{
    default: 

    $all = DB::$dbs->querySingle("SELECT COUNT(`id`) FROM " . DUNGEONS . "");
    $n = new Navigator($all,10,'');
    $sql = DB::$dbs->query("SELECT * FROM " . DUNGEONS ." ORDER BY `lvl` DESC LIMIT {$n->start()}, 10"); 

    if (empty($all)) 
    {
        errorNoExit('Подземелий не найдено');
    } 
    else 
    {
        while ($dung = $sql -> fetch()) 
        {
            ?> 
            <a href="<?=HOME?>/modules/dungeons/index.php?do=info&amp;dungeonId=<?=$dung['id']?>" class="link-touch"><?=ico('skull.png')?> <?=$Filter->output($dung['name'])?> <?=($user['lvl'] >= $dung['lvl'] ? ico('1.png') : ico('0.png'))?></a>
            <?php
        } 
        echo $n->navi();
    } 
    
    if ($user['dungeon_cooldown'] > time()) 
    {
        ?> 
        <?=ico('time.png')?> Таймаут: <?=countTime(($user['dungeon_cooldown'] - time()))?><br/>
        <?php
    }

    break;

    case 'info': 

    if (isset($_GET['dungeonId']) && ! empty($_GET['dungeonId'])) 
    {
        $dungeonId = $Filter->clearInt($_GET['dungeonId']); 

        $dungeon = DB::$dbs->queryFetch("SELECT * FROM " . DUNGEONS . " WHERE `id` = ?", [$dungeonId]); 

        if (empty($dungeon)) 
        {
            error('Подземелье не найдено', '/', 'На главную');
        } 
        else 
        {
            ?> 
            <div class="headerImg"><img src="<?=HOME?>/img/dungeons/<?=$Filter->clearInt($dungeon['id'])?>/main.png" alt="[header-img]" width="350px"></div>
            Требуемый уровень: <span style="color: darkorange;"><?=$Filter->clearInt($dungeon['lvl'])?>+</span><br/>
            Размер банды: <span style="color: darkorange;">5</span><br/>
            Очки клана: <span style="color: darkorange;">3к - 5к</span><br/>
            <?=moneyIcon()?>Золото: <span style="color: darkorange;">~50</span>
            <hr>
            <a href="<?=HOME?>/modules/dungeons/index.php?do=create.party&amp;dungeonId=<?=$Filter->clearInt($dungeon['id'])?>" class="link-touch">Создать банду</a>
            <div class="head"><?=$Filter->output($dungeon['name'])?></div>
            <div class="content"><?=$Filter->output($dungeon['info'])?></div>
            <?php
        }
    } 
    else 
    {
        error('Подземелье не найдено', '/', 'На главную');
    } 

    break; 

    case 'create.party': 

    if (!empty($user['party'])) 
    {
        error('Вы уже состоите в банде', '/', 'На главную');
    } 
    else if ($user['dungeon_cooldown'] > time()) 
    {
        error('Вы пока не можете пойти в подземелье', '/', 'На главную');
    }
    else 
    {
        if (empty($_GET['dungeonId'])) 
        {
            error('Подземелье не найдено', '/', 'На главную');
        } 
        else 
        {
            $dungeonId = $Filter->clearInt($_GET['dungeonId']);

            $dungeon = DB::$dbs->queryFetch("SELECT * FROM " . DUNGEONS . " WHERE `id` = ?", [$dungeonId]);

            if (empty($dungeon)) 
            {
                error('Подземелье не найдено', '/', 'На главную');
            } 
            else 
            { 
                DB::$dbs->query("INSERT INTO " . PARTY . " (`dungeon_id`, `max_members`, `time`) VALUES (?, ?, ?)", [$dungeonId, 5, time()]); 
                $last = DB::$dbs->lastInsertId();

                DB::$dbs->query("UPDATE " . USERS . " SET `party` = ?, `party_access` = ? WHERE `id` = ?", [$last, 1, $user['id']]);
                success('Банда успешно создана', '/', 'На главную');
            }
        }
    } 

    break;
} 

require_once '../../core/foot.php';