findUser($email); if (!is_dir("data/mails") && !mkdir("data/mails", 0777, true)) { throw new RuntimeException("Ordner data/mails konnte nicht erstellt werden."); } if (!is_dir("data/pending") && !mkdir("data/pending", 0777, true)) { throw new RuntimeException("Ordner data/pending konnte nicht erstellt werden."); } if (!is_writable("data/mails")) { throw new RuntimeException("Ordner data/mails ist nicht beschreibbar."); } if (!is_writable("data/pending")) { throw new RuntimeException("Ordner data/pending ist nicht beschreibbar."); } if ($existingUser === null) { $password = password_hash($plainPassword, PASSWORD_DEFAULT); $pendingData = [ "email" => $email, "vorname" => $vorname, "nachname" => $nachname, "password" => $password ]; file_put_contents( "data/pending/" . $token . ".json", json_encode($pendingData, JSON_PRETTY_PRINT) ); $mailContent = "

Registrierung bestätigen

Bitte ignorieren Sie diese Nachricht, wenn Sie sich nicht registrieren wollten.

Registrierung bestätigen

"; } else { $mailContent = "

Registrierung

Bitte ignorieren Sie diese Nachricht, wenn Sie sich nicht registrieren wollten.

Sie sind bereits registriert.

Passwort vergessen

"; } file_put_contents("data/mails/" . $token . ".html", $mailContent); // Neutrale Meldung, damit nicht sichtbar wird, ob die E-Mail bereits registriert ist. $success = 'Weitere Infos finden Sie in der Datei xy.'; } catch (Exception $e) { $error = "Die Registrierung konnte nicht verarbeitet werden."; } } }