Reviewänderungen

This commit is contained in:
2026-06-30 20:25:36 +02:00
parent 1b2ab1cccb
commit cc5f46c00e
10 changed files with 177 additions and 104 deletions
+13 -48
View File
@@ -1,55 +1,20 @@
<?php
/** @var string $title */
/** @var string $message */
/** @var string $link */
/** @var bool $isSuccess */
require_once "php/model/UserManager.php";
$token = basename($_GET["token"] ?? "");
$file = "data/pending-password/" . $token . ".json";
$title = "Passwort zurücksetzen";
$message = "";
$link = "";
$isSuccess = false;
if (!file_exists($file)) {
$message = "Der Bestätigungslink ist ungültig oder bereits abgelaufen.";
} else {
$data = json_decode(file_get_contents($file), true);
if ($data === null || empty($data["email"]) || empty($data["password"])) {
$message = "Die Daten zur Passwortänderung konnten nicht gelesen werden.";
} else {
try {
$dao = UserManager::getInstance();
$user = $dao->findUser($data["email"]);
if ($user !== null) {
$dao->updateUser(
$user["email"],
$user["email"],
$user["vorname"],
$user["nachname"],
$data["password"]
);
unlink($file);
$title = "Passwort geändert";
$message = "Ihr Passwort wurde erfolgreich geändert. Sie können sich jetzt anmelden.";
$link = '<a class="button confirm-button" href="index.php?pfad=login">Zum Login</a>';
$isSuccess = true;
} else {
unlink($file);
$message = "Der Benutzer konnte nicht gefunden werden.";
}
} catch (Exception $e) {
$message = "Das Passwort konnte nicht geändert werden.";
}
}
}
$title = $title ?? "Passwort zurücksetzen";
$message = $message ?? "Der Bestätigungslink konnte nicht verarbeitet werden.";
$link = $link ?? "";
$isSuccess = $isSuccess ?? false;
?>
<!--
Ansicht: Passwortbestätigung
Funktion: Zeigt das Ergebnis der Passwortänderung an.
-->
<main class="login-page">
<div class="login-container">