From d26f66f9a85ef88000cb63f522a203f9d711c3e8 Mon Sep 17 00:00:00 2001 From: stepan Date: Wed, 18 Mar 2026 12:39:35 +0100 Subject: [PATCH] =?UTF-8?q?[admin]=20Ochrana=20prvn=C3=ADho=20u=C5=BEivate?= =?UTF-8?q?le=20p=C5=99ed=20smaz=C3=A1n=C3=ADm,=20odkaz=20na=20admin=20v?= =?UTF-8?q?=20$auth=5Flogout=5Fhtml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- auth/admin.php | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/auth/admin.php b/auth/admin.php index 92b5ef2..d309fb2 100644 --- a/auth/admin.php +++ b/auth/admin.php @@ -174,10 +174,16 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { $chyba = 'Neplatné ID uživatele.'; } elseif ($uzivatel_id === (int) $auth_uzivatel['id']) { $chyba = 'Nemůžeš smazat svůj vlastní účet.'; + } elseif ($uzivatel_id === 1) { + // Uživatel s id=1 je první admin vytvořený při instalaci – + // jeho smazání by mohlo zanechat systém bez správce + $chyba = 'Prvního uživatele systému nelze smazat.'; } if (empty($chyba)) { try { + // Díky FOREIGN KEY s ON DELETE CASCADE se automaticky + // smažou i záznamy v navázaných tabulkách $stmt = $pdo->prepare(" DELETE FROM `" . DB_TABULKA_UZIVATELE . "` WHERE `id` = :id @@ -284,6 +290,7 @@ try { +
@@ -293,7 +300,14 @@ try {
  - +
@@ -301,6 +315,13 @@ try {
+ + + + (první uživatel systému – nelze smazat) + + (vlastní účet – nelze smazat) + @@ -381,6 +402,7 @@ try { PROJEKT_URL AUTH_LOGIN_URL AUTH_LOGOUT_URL + AUTH_ADMIN_URL AUTH_REGISTRACE_URL AUTH_RESET_URL AUTH_REDIRECT_PO_PRIHLASENI