diff --git a/content/confirm-register.php b/content/confirm-register.php
index 7c4f2f0..9b074ab 100644
--- a/content/confirm-register.php
+++ b/content/confirm-register.php
@@ -18,6 +18,13 @@ if (!file_exists($file)) {
if ($data === null) {
$message = "Die Registrierungsdaten konnten nicht gelesen werden.";
+ } elseif (
+ empty($data["email"]) ||
+ empty($data["vorname"]) ||
+ empty($data["nachname"]) ||
+ empty($data["password"])
+ ) {
+ $message = "Die Registrierungsdaten sind unvollständig.";
} else {
try {
diff --git a/content/register.php b/content/register.php
index 548b24c..f4e2512 100644
--- a/content/register.php
+++ b/content/register.php
@@ -13,13 +13,13 @@ $success = $success ?? null;
Jetzt Registrieren!
-
+
-
+
diff --git a/content/show-mail.php b/content/show-mail.php
index 2ff5b54..2200b7f 100644
--- a/content/show-mail.php
+++ b/content/show-mail.php
@@ -1,7 +1,12 @@
Datei nicht gefunden.";
diff --git a/css/main.css b/css/main.css
index d28a37c..e72f17f 100644
--- a/css/main.css
+++ b/css/main.css
@@ -130,13 +130,6 @@ h1 {
color: #1f2937;
}
-.input-label {
- margin-bottom: 5px;
- font-weight: bold;
- width: 100%;
- color: #1f2937;
-}
-
.login-input {
width: 100%;
padding: 12px;
@@ -210,14 +203,6 @@ h1 {
.form-container {
width: 90%;
max-width: 600px;
- padding: 30px;
- background-color: white;
- border: 1px solid #dbe3ec;
- border-radius: 10px;
- box-shadow: 0 6px 20px rgba(0,0,0,0.1);
-}
-
-.form-container {
flex: 1 1 450px;
padding: 30px;
background-color: white;
diff --git a/php/controller/register-controller.php b/php/controller/register-controller.php
index 39612f1..8723d9c 100644
--- a/php/controller/register-controller.php
+++ b/php/controller/register-controller.php
@@ -25,9 +25,26 @@ if ($_SERVER["REQUEST_METHOD"] === "POST") {
try {
$dao = UserManager::getInstance();
+ // Token für die simulierte E-Mail und die spätere Bestätigung erzeugen.
$token = bin2hex(random_bytes(16));
$existingUser = $dao->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);
@@ -38,22 +55,6 @@ if ($_SERVER["REQUEST_METHOD"] === "POST") {
"password" => $password
];
- 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.");
- }
-
file_put_contents(
"data/pending/" . $token . ".json",
json_encode($pendingData, JSON_PRETTY_PRINT)
@@ -83,6 +84,7 @@ if ($_SERVER["REQUEST_METHOD"] === "POST") {
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.';