[auth] $auth_logout_html – přidán odkaz na admin rozhraní pro admina

This commit is contained in:
stepan
2026-03-18 12:38:42 +01:00
parent ad0916f25b
commit 40289394d2
+18 -4
View File
@@ -14,7 +14,8 @@
// $auth_uzivatel['email'] ... email přihlášeného uživatele (nebo null)
// $auth_uzivatel['admin'] ... true / false (vždy nastaveno)
//
// $auth_logout_html ... HTML formulář s tlačítkem "Odhlásit se"
// $auth_logout_html ... HTML s tlačítkem "Odhlásit se"
// a (pro admina) odkazem na admin rozhraní.
// Neprázdný pouze pokud je uživatel přihlášen.
// Použití: echo $auth_logout_html;
//
@@ -271,7 +272,6 @@ if (!$auth_prihlasen && VYZADOVAT_PRIHLASENI) {
// ------------------------------------------------------------
// CSRF TOKEN zajistíme, že vždy existuje
// ------------------------------------------------------------
// Je potřebný pro oba HTML formuláře níže.
if (empty($_SESSION['csrf_token'])) {
$_SESSION['csrf_token'] = bin2hex(random_bytes(32));
@@ -283,11 +283,25 @@ if (empty($_SESSION['csrf_token'])) {
// -- Odhlašovací formulář ------------------------------------
// Neprázdný pouze pokud je uživatel přihlášen.
// Pro admina obsahuje navíc odkaz na administrační rozhraní.
// Použití na stránce: echo $auth_logout_html;
if ($auth_prihlasen) {
$auth_logout_html =
'<form method="POST" action="' . htmlspecialchars(AUTH_LOGOUT_URL) . '">'
$auth_logout_html = '';
// Odkaz na admin rozhraní pouze pro admina
if ($auth_uzivatel['admin']) {
$auth_logout_html .=
'<a href="' . htmlspecialchars(AUTH_ADMIN_URL) . '">Administrace</a> | ';
}
// Přihlášený uživatel a tlačítko odhlášení
$auth_logout_html .=
htmlspecialchars($auth_uzivatel['email'])
. ' | '
. '<form method="POST" action="' . htmlspecialchars(AUTH_LOGOUT_URL) . '"'
. ' style="display:inline;">'
. '<input type="hidden" name="csrf_token" value="'
. htmlspecialchars($_SESSION['csrf_token']) . '">'
. '<button type="submit">Odhlásit se</button>'