<?php
declare(strict_types=1);

/**
 * /functional/games/index.php
 * Хаб "Ігри":
 * - список міні-ігор
 * - посилання на рулетку
 * - посилання на тетріс
 * - 3-колонковий layout з боковими блоками (ліва/права колонки)
 *
 * SEO: персоналізований розділ (лише для логіну) => noindex
 */

require_once __DIR__ . '/../../includes/start.php';

if (function_exists('require_login')) {
    require_login();
} else {
    if (!function_exists('current_user') || !current_user()) {
        header('Location: /login.php');
        exit;
    }
}

$me = function_exists('current_user') ? current_user() : null;

if (!function_exists('h')) {
    function h(?string $s): string { return htmlspecialchars((string)$s, ENT_QUOTES, 'UTF-8'); }
}

if (!function_exists('g_lang')) {
    function g_lang(): string {
        $lang = (string)($_SESSION['lang'] ?? '');
        if ($lang === '' && function_exists('current_user')) {
            $u = current_user();
            $lang = (string)($u['lang'] ?? '');
        }
        if (!in_array($lang, ['uk','ru','en'], true)) $lang = 'uk';
        return $lang;
    }
}

if (!function_exists('gt')) {
    function gt(string $key): string {
        if (function_exists('t')) {
            $v = (string)t($key);
            if ($v !== '' && $v !== $key) return $v;
        }
        $l = g_lang();
        $dict = [
            'games'        => ['uk'=>'Ігри','ru'=>'Игры','en'=>'Games'],
            'roulette'     => ['uk'=>'Рулетка','ru'=>'Рулетка','en'=>'Roulette'],
            'tetris'       => ['uk'=>'Тетріс','ru'=>'Тетрис','en'=>'Tetris'],
            'snake'        => ['uk'=>'Змійка','ru'=>'Змейка','en'=>'Snake'],
            'games_about'  => ['uk'=>'Прості міні-ігри для розваги.','ru'=>'Простые мини-игры для развлечения.','en'=>'Simple mini-games for fun.'],
            'open'         => ['uk'=>'Відкрити','ru'=>'Открыть','en'=>'Open'],
            'soon'         => ['uk'=>'Скоро','ru'=>'Скоро','en'=>'Soon'],
            'dev'          => ['uk'=>'В стадії розробки.','ru'=>'В разработке.','en'=>'In development.'],
            'tetris_about' => [
                'uk'=>'Класичний Тетріс: лінії, рівні, рекорд (localStorage).',
                'ru'=>'Классический Тетрис: линии, уровни, рекорд (localStorage).',
                'en'=>'Classic Tetris: lines, levels, best score (localStorage).'
            ],
            'roulette_about' => [
                'uk'=>'Європейська рулетка (віртуальні фішки).',
                'ru'=>'Европейская рулетка (виртуальные фишки).',
                'en'=>'European roulette (virtual chips).'
            ],
        ];
        return $dict[$key][$l] ?? $key;
    }
}

$title = gt('games');

/* SEO: приватна зона */
$seo_noindex = true;

include __DIR__ . '/../../includes/header.php';
?>
<link rel="stylesheet" href="/css/games.css?v=1">

<div class="container py-3">
    <div class="row g-3">
        <div class="col-lg-3">
            <?php
            $left = __DIR__ . '/../../blocks/left.php';
            if (is_file($left)) include $left;
            ?>
        </div>

        <div class="col-lg-6">
            <div class="vm-card p-3 p-md-4">
                <div class="d-flex align-items-center justify-content-between gap-3 flex-wrap">
                    <div>
                        <h1 class="h4 mb-1"><?= h(gt('games')) ?></h1>
                        <div class="text-muted small"><?= h(gt('games_about')) ?></div>
                    </div>
                    <!-- ✅ назад до стрічки має вести на головну / -->
                    <a class="btn btn-sm btn-outline-primary" href="/">
                        ← <?= h((g_lang()==='en') ? 'Back to feed' : ((g_lang()==='ru') ? 'Назад к ленте' : 'Назад до стрічки')) ?>
                    </a>
                </div>
            </div>

            <div class="row g-3 mt-1">
                <div class="col-12">
                    <div class="vm-card p-3 d-flex align-items-center justify-content-between flex-wrap gap-2">
                        <div>
                            <div class="fw-semibold"><?= h(gt('roulette')) ?></div>
                            <div class="text-muted small"><?= h(gt('roulette_about')) ?></div>
                        </div>
                        <a class="btn btn-primary" href="/functional/games/roulette.php"><?= h(gt('open')) ?></a>
                    </div>
                </div>

                <div class="col-12">
                    <div class="vm-card p-3 d-flex align-items-center justify-content-between flex-wrap gap-2">
                        <div>
                            <div class="fw-semibold"><?= h(gt('snake')) ?></div>
                            <div class="text-muted small"><?= h(gt('dev')) ?></div>
                        </div>
                        <span class="badge text-bg-secondary"><?= h(gt('soon')) ?></span>
                    </div>
                </div>

                <!-- ✅ TETRIS: тепер не Soon, а робоча гра -->
                <div class="col-12">
                    <div class="vm-card p-3 d-flex align-items-center justify-content-between flex-wrap gap-2">
                        <div>
                            <div class="fw-semibold"><?= h(gt('tetris')) ?></div>
                            <div class="text-muted small"><?= h(gt('tetris_about')) ?></div>
                        </div>
                        <a class="btn btn-primary" href="/functional/games/tetris/"><?= h(gt('open')) ?></a>
                    </div>
                </div>
            </div>
        </div>

        <div class="col-lg-3">
            <?php
            $groups = __DIR__ . '/../../blocks/groups.php';
            if (is_file($groups)) include $groups;

            $gamesBlock = __DIR__ . '/../../blocks/games.php';
            if (is_file($gamesBlock)) include $gamesBlock;
            ?>
        </div>
    </div>
</div>

<?php include __DIR__ . '/../../includes/footer.php'; ?>