| Server IP : 193.86.120.172 / Your IP : 216.73.216.215 Web Server : Apache/2.4.63 (Unix) System : Linux JServices 3.10.108 #86003 SMP Wed Oct 22 13:20:46 CST 2025 x86_64 User : kubec ( 1026) PHP Version : 8.2.28 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /volume1/web/hotellesnizatisi_cz/new/ |
Upload File : |
<?php
require_once __DIR__ . '/includes/auth.php';
$user = require_role(['admin', 'manazer']);
require_once __DIR__ . '/includes/layout.php';
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
header('Location: uzivatele.php');
exit;
}
$id = (int)($_POST['id'] ?? 0);
$stmt = db()->prepare('SELECT * FROM uzivatele WHERE id = ?');
$stmt->execute([$id]);
$target = $stmt->fetch();
if (!$target) {
set_flash('error', 'Uživatel nebyl nalezen.');
header('Location: uzivatele.php');
exit;
}
if ($user['role'] === 'manazer' && $target['role'] !== 'zamestnanec') {
http_response_code(403);
die('Nemáte oprávnění resetovat heslo tomuto účtu.');
}
$tempPassword = generate_temp_password();
$hash = password_hash($tempPassword, PASSWORD_DEFAULT);
db()->prepare('UPDATE uzivatele SET heslo_hash = ?, vyzaduje_zmenu_hesla = 1 WHERE id = ?')
->execute([$hash, $id]);
set_flash('success', 'Heslo pro „' . $target['jmeno'] . ' ' . $target['prijmeni'] . '“ bylo resetováno. Nové dočasné heslo: ' . $tempPassword . ' — uložte si ho, znovu se nezobrazí. Při příštím přihlášení si uživatel nastaví vlastní.');
header('Location: uzivatele.php');
exit;