175 lines
5.8 KiB
PHP
175 lines
5.8 KiB
PHP
<?php
|
||
// ============================================================
|
||
// UKÁZKOVÁ STRÁNKA S CHRÁNĚNÝM OBSAHEM
|
||
// ============================================================
|
||
// Demonstruje použití auth systému s VYZADOVAT_PRIHLASENI = false.
|
||
// Stránka je dostupná všem, ale zobrazuje různý obsah podle
|
||
// toho, zda je uživatel přihlášen nebo ne.
|
||
//
|
||
// Předpoklad: v auth/config.php je nastaveno:
|
||
// define('VYZADOVAT_PRIHLASENI', false);
|
||
// ============================================================
|
||
|
||
require_once 'auth/auth.php';
|
||
|
||
// $auth_prihlasen, $auth_uzivatel, $auth_logout_html, $auth_login_html
|
||
// jsou nyní k dispozici díky auth.php
|
||
|
||
?>
|
||
<!DOCTYPE html>
|
||
<html lang="cs">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>Ukázková stránka – <?php echo htmlspecialchars(PROJEKT_NAZEV); ?></title>
|
||
<?php if (AUTH_CSS !== ''): ?>
|
||
<link rel="stylesheet" href="<?php echo htmlspecialchars(AUTH_CSS); ?>">
|
||
<?php endif; ?>
|
||
</head>
|
||
<body>
|
||
|
||
<!-- ============================================================
|
||
HLAVIČKA – zobrazena vždy
|
||
============================================================ -->
|
||
<header>
|
||
<hr>
|
||
<h1><?php echo htmlspecialchars(PROJEKT_NAZEV); ?></h1>
|
||
<!-- Sem můžeš vložit obrázkové logo, např.: -->
|
||
<!-- <img src="/img/logo.png" alt="Logo"> -->
|
||
<hr>
|
||
</header>
|
||
|
||
|
||
<!-- ============================================================
|
||
PŘIHLAŠOVACÍ BADGE
|
||
Nepřihlášeným: formulář (email, heslo, zapamatovat, odeslat)
|
||
+ odkaz na registraci (pokud povolena)
|
||
+ odkaz na zapomenuté heslo
|
||
Přihlášeným: email uživatele + tlačítko odhlášení
|
||
+ odkaz na administraci (pouze pro admina)
|
||
============================================================ -->
|
||
<section>
|
||
<h2>Přihlášení</h2>
|
||
|
||
<?php if ($auth_prihlasen): ?>
|
||
|
||
<?php
|
||
// Pro přihlášené zobrazíme $auth_logout_html, který obsahuje:
|
||
// - odkaz na administraci (pouze pro adminy)
|
||
// - email přihlášeného uživatele
|
||
// - tlačítko odhlášení
|
||
// Vše je sestaveno v auth.php
|
||
echo $auth_logout_html;
|
||
?>
|
||
|
||
<?php else: ?>
|
||
|
||
<?php
|
||
// Pro nepřihlášené zobrazíme $auth_login_html, který obsahuje:
|
||
// - pole pro email a heslo
|
||
// - checkbox "zapamatovat si mě"
|
||
// - tlačítko odeslat
|
||
// - skrytý CSRF token a redirect URL
|
||
// Formulář odesílá data na login.php, které nás po
|
||
// přihlášení přesměruje zpět sem
|
||
echo $auth_login_html;
|
||
?>
|
||
|
||
<?php if (REGISTRACE_OTEVRENA): ?>
|
||
<p><a href="<?php echo htmlspecialchars(AUTH_REGISTRACE_URL); ?>">Nemáš účet? Zaregistruj se.</a></p>
|
||
<?php endif; ?>
|
||
|
||
<p><a href="<?php echo htmlspecialchars(AUTH_RESET_URL); ?>">Zapomenuté heslo</a></p>
|
||
|
||
<?php endif; ?>
|
||
|
||
</section>
|
||
|
||
<hr>
|
||
|
||
<!-- ============================================================
|
||
NAVIGACE – dvě varianty podle stavu přihlášení
|
||
============================================================ -->
|
||
<nav>
|
||
|
||
<?php if ($auth_prihlasen): ?>
|
||
|
||
<p>Navigace pro přihlášené uživatele:</p>
|
||
<ul>
|
||
<li><a href="#">Můj profil</a></li>
|
||
<li><a href="#">Moje nastavení</a></li>
|
||
<li><a href="#">Chráněná sekce A</a></li>
|
||
<li><a href="#">Chráněná sekce B</a></li>
|
||
<?php if ($auth_uzivatel['admin']): ?>
|
||
<li><a href="<?php echo htmlspecialchars(AUTH_ADMIN_URL); ?>">Administrace</a></li>
|
||
<?php endif; ?>
|
||
</ul>
|
||
|
||
<?php else: ?>
|
||
|
||
<p>Navigace pro nepřihlášené návštěvníky:</p>
|
||
<ul>
|
||
<li><a href="#">Úvod</a></li>
|
||
<li><a href="#">O projektu</a></li>
|
||
<li><a href="#">Veřejná sekce</a></li>
|
||
<?php if (REGISTRACE_OTEVRENA): ?>
|
||
<li><a href="<?php echo htmlspecialchars(AUTH_REGISTRACE_URL); ?>">Registrace</a></li>
|
||
<?php endif; ?>
|
||
</ul>
|
||
|
||
<?php endif; ?>
|
||
|
||
</nav>
|
||
|
||
<hr>
|
||
|
||
<!-- ============================================================
|
||
OBSAH STRÁNKY – stránka sama rozhoduje co zobrazit
|
||
============================================================ -->
|
||
<main>
|
||
|
||
<?php if ($auth_prihlasen): ?>
|
||
|
||
<!-- Obsah pro přihlášené uživatele -->
|
||
<h2>Vítej, <?php echo htmlspecialchars($auth_uzivatel['email']); ?>!</h2>
|
||
|
||
<p>Toto je chráněný obsah, který vidí pouze přihlášení uživatelé.</p>
|
||
|
||
<p>Tvoje údaje z auth systému:
|
||
<ul>
|
||
<li>ID: <?php echo htmlspecialchars($auth_uzivatel['id']); ?></li>
|
||
<li>Email: <?php echo htmlspecialchars($auth_uzivatel['email']); ?></li>
|
||
<li>Admin: <?php echo $auth_uzivatel['admin'] ? 'ANO' : 'ne'; ?></li>
|
||
</ul>
|
||
</p>
|
||
|
||
<?php if ($auth_uzivatel['admin']): ?>
|
||
<p>Vidíš toto, protože jsi admin. <a href="<?php echo htmlspecialchars(AUTH_ADMIN_URL); ?>">Přejít do administrace.</a></p>
|
||
<?php endif; ?>
|
||
|
||
<?php else: ?>
|
||
|
||
<!-- Obsah pro nepřihlášené návštěvníky -->
|
||
<h2>Vítej na ukázkové stránce</h2>
|
||
|
||
<p>Toto je veřejný obsah, který vidí každý návštěvník.</p>
|
||
|
||
<p>Pro zobrazení chráněného obsahu se přihlas pomocí formuláře výše.</p>
|
||
|
||
<?php endif; ?>
|
||
|
||
</main>
|
||
|
||
<hr>
|
||
|
||
<!-- ============================================================
|
||
PATIČKA – zobrazena vždy
|
||
============================================================ -->
|
||
<footer>
|
||
<p><?php echo htmlspecialchars(PROJEKT_NAZEV); ?>
|
||
– <a href="<?php echo htmlspecialchars(PROJEKT_URL); ?>"><?php echo htmlspecialchars(PROJEKT_URL); ?></a></p>
|
||
<hr>
|
||
</footer>
|
||
|
||
</body>
|
||
</html>
|