/
streamlive
/
StreamLiveV11
Обзор
Документация
Войти
/
streamlive
/
StreamLiveV11
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
master
includes/header.php
87 строк
5 KB
TwixoffStudio
Create: ai_client.php, antibot.php, auth.php, bbcode.php, bbcode_toolbar.php, db.php, embed_helper.php, footer.php, functions.php, geo.php, header.php, migrations.php, mini_player.php, oauth.php, rss.php, stats.php, totp.php
15 июл 2026, 01:16
Верифицирован
15 июл 2026, 01:16
a3a3d10
Код
Авторство
О чём код?
<?php require_once __DIR__ . '/auth.php'; $__user = current_user(); $__flash = flash_get(); $pageTitle = $pageTitle ?? SITE_NAME; $seoDescription = $seoDescription ?? 'StreamLive — платформа для создания онлайн телеканалов и радио'; $seoKeywords = $seoKeywords ?? ''; $seoImage = $seoImage ?? null; $__canonical = SITE_URL . ($_SERVER['REQUEST_URI'] ?? '/'); ?> <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title><?= e($pageTitle) ?> — <?= e(SITE_NAME) ?></title> <meta name="description" content="<?= e($seoDescription) ?>"> <?php if ($seoKeywords): ?><meta name="keywords" content="<?= e($seoKeywords) ?>"><?php endif; ?> <link rel="canonical" href="<?= e($__canonical) ?>"> <meta property="og:title" content="<?= e($pageTitle) ?>"> <meta property="og:description" content="<?= e($seoDescription) ?>"> <meta property="og:type" content="website"> <meta property="og:url" content="<?= e($__canonical) ?>"> <?php if ($seoImage): ?><meta property="og:image" content="<?= e($seoImage) ?>"><meta name="twitter:card" content="summary_large_image"><?php endif; ?> <meta name="robots" content="index, follow"> <?php $__cssPath = __DIR__ . '/../assets/css/style.css'; $__cssVer = file_exists($__cssPath) ? filemtime($__cssPath) : time(); ?> <link rel="stylesheet" href="/assets/css/style.css?v=<?= $__cssVer ?>"> <?php if (!empty($extraHead)) echo $extraHead; ?> </head> <body> <nav class="navbar"> <a href="/" class="brand"><?= e(SITE_NAME) ?></a> <div class="nav-links"> <a href="/forum.php">Форум</a> <?php if ($__user): ?> <a href="/favorites.php">Избранное</a> <a href="/dashboard.php">Мои каналы</a> <?php $__unreadCount = 0; try { $__unreadStmt = db()->prepare( 'SELECT COUNT(*) FROM messages m JOIN conversations c ON c.id = m.conversation_id WHERE (c.user_a_id = ? OR c.user_b_id = ?) AND m.sender_id != ? AND m.read_at IS NULL AND m.is_deleted = 0' ); $__unreadStmt->execute([$__user['id'], $__user['id'], $__user['id']]); $__unreadCount = (int)$__unreadStmt->fetchColumn(); } catch (\Throwable $e) { // Таблицы сообщений появятся после sql/migrations/004_add_messaging.sql — до этого просто не считаем непрочитанные } ?> <a href="/messages.php" class="nav-messages">Сообщения<?php if ($__unreadCount > 0): ?><span class="nav-badge"><?= $__unreadCount ?></span><?php endif; ?></a> <a href="/profile.php?username=<?= e($__user['username']) ?>">Профиль</a> <a href="/sticker_packs.php">Стикеры</a> <a href="/services.php">Сервисы</a> <?php if ($__user['role'] === 'admin'): ?><a href="/admin/index.php">Админка</a><?php endif; ?> <form action="/auth/logout.php" method="POST" style="display:inline"> <?= csrf_field() ?> <button class="btn btn-outline btn-sm" type="submit">Выйти</button> </form> <?php else: ?> <a href="/auth/login.php">Войти</a> <a href="/auth/register.php" class="btn btn-primary btn-sm">Регистрация</a> <?php endif; ?> </div> </nav> <?php foreach ($__flash as $type => $msg): ?> <div class="container"><div class="alert alert-<?= e($type) ?>"><?= e($msg) ?></div></div> <?php endforeach; ?> <?php // Реклама не грузится на страницах входа/регистрации/2FA и в админке — она не нужна там // пользователю, и раньше мешала (перекрывала/дёргала форму) именно на вводе пин-кода 2FA. $__adPath = parse_url($_SERVER['REQUEST_URI'] ?? '/', PHP_URL_PATH); $__noAdPaths = ['/auth/login.php', '/auth/register.php', '/auth/2fa_setup.php', '/auth/2fa_verify.php', '/auth/logout.php']; $__showAd = !in_array($__adPath, $__noAdPaths, true) && strpos((string)$__adPath, '/admin/') !== 0; if ($__showAd): ?> <!-- Верхний рекламный блок --> <div class="topAdPad"> <div id="movie_video"></div> <script type="text/javascript" src="https://ad-network.tatnet.app/ad.js?v=03208824bea369b060dba1f2083d6a4c" async></script> <nav class="site-footer-links"> <a href="/docs.php">Документация</a> <a href="/legal/terms.php">Условия использования</a> <a href="/legal/privacy.php">Конфиденциальность</a> <a href="/legal/cookies.php">Cookie</a> </nav> </div> <?php endif; ?>