diff --git a/.idea/sqldialects.xml b/.idea/sqldialects.xml
index a56ab6a0ba3982e21c480bccdab3455ba7e03edb..e641a4078956810bfba37b46a926f5f71cc47bf8 100644
--- a/.idea/sqldialects.xml
+++ b/.idea/sqldialects.xml
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="SqlDialectMappings">
+    <file url="file://$PROJECT_DIR$/datenbank-final-horizon_changers-dump.sql" dialect="MySQL" />
     <file url="file://$PROJECT_DIR$/userman_all/server/db/init.sql" dialect="MySQL" />
   </component>
 </project>
\ No newline at end of file
diff --git a/userman_all/client/index.html b/userman_all/client/index.html
index 913d12e5b0a1e74fa5f10d9e3a6007cbb951febe..96bcb445bcb28f1705473bd30b968fa6559080e3 100644
--- a/userman_all/client/index.html
+++ b/userman_all/client/index.html
@@ -831,10 +831,10 @@
             <label for="country">Land auswählen</label>
             <select id="country" name="country">
                 <option value="">-- Bitte wählen --</option>
-                <option value="spanien">Spanien</option>
-                <option value="peru">Peru</option>
-                <option value="indien">Indien</option>
-                <option value="kenia">Kenia</option>
+                <option value="Spanien - Pfoten ohne Grenzen!">Spanien</option>
+                <option value="Peru - Bausteine der Gesundheit">Peru</option>
+                <option value="Indien - Bildungslicht für Frauen">Indien</option>
+                <option value="Kenia - Lebensquellen Kenia">Kenia</option>
             </select>
 
             <label for="titleReisebericht">Titel</label>
diff --git a/userman_all/client/stylesheet.css b/userman_all/client/stylesheet.css
index 8729a2d5ba855be4f25179529fbafb18ce43a6cc..da555c603de0e4ff85db8aaf2b974b2b1f25db64 100644
--- a/userman_all/client/stylesheet.css
+++ b/userman_all/client/stylesheet.css
@@ -1725,7 +1725,6 @@ padding: 20px;
 }
 
 .small-button-edit {
-    color: #03355C;
     border: 1px solid #FB7300;
     border-radius: 50px;
     margin-top: 10px;
@@ -1739,4 +1738,33 @@ padding: 20px;
     font-size: 20px;
     border-radius: 50px;
     cursor: pointer;
+}
+
+#exampleModalLabelReisebericht {
+    font-family: "DM Sans", sans-serif;
+}
+#updateModalReisebericht {
+    background:#FCF3E4;
+    display: flex;
+    align-items: center;
+    border-radius: 20px;
+    flex-direction: column;
+
+}
+
+.modal-body.card {
+    border-color:#FCF3E4;
+    background-color: #FCF3E4;
+    border-radius: 10px;
+    box-shadow: none;
+    margin-top: 15px;
+}
+#saveButtonEditReisebericht {
+    color: #ffffff;
+    background-color: #fb7300;
+    border-radius: 50px;
+    border: none;
+}
+.modal-footer {
+    border-color:#FCF3E4;
 }
\ No newline at end of file
diff --git a/userman_all/server/doc/index.html b/userman_all/server/doc/index.html
index 9e997c127e1e1b8f25932b221fb2985d7a1d4210..1f6cc3b7ff3711216a27f3f6fc31dae8ed668277 100644
--- a/userman_all/server/doc/index.html
+++ b/userman_all/server/doc/index.html
@@ -5,15 +5,15 @@
   <meta name="description" content="horizon changers website">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-  <link href="assets/bootstrap.min.css?v=1737968153982" rel="stylesheet" media="screen">
-  <link href="assets/prism.css?v=1737968153982" rel="stylesheet" />
-  <link href="assets/prism-toolbar.css?v=1737968153982" rel="stylesheet" />
-  <link href="assets/prism-diff-highlight.css?v=1737968153982" rel="stylesheet" />
-  <link href="assets/main.css?v=1737968153982" rel="stylesheet" media="screen, print">
-  <link href="assets/favicon.ico?v=1737968153982" rel="icon" type="image/x-icon">
-  <link href="assets/apple-touch-icon.png?v=1737968153982" rel="apple-touch-icon" sizes="180x180">
-  <link href="assets/favicon-32x32.png?v=1737968153982" rel="icon" type="image/png" sizes="32x32">
-  <link href="assets/favicon-16x16.png?v=1737968153982" rel="icon" type="image/png" sizes="16x16">
+  <link href="assets/bootstrap.min.css?v=1738144941061" rel="stylesheet" media="screen">
+  <link href="assets/prism.css?v=1738144941061" rel="stylesheet" />
+  <link href="assets/prism-toolbar.css?v=1738144941061" rel="stylesheet" />
+  <link href="assets/prism-diff-highlight.css?v=1738144941061" rel="stylesheet" />
+  <link href="assets/main.css?v=1738144941061" rel="stylesheet" media="screen, print">
+  <link href="assets/favicon.ico?v=1738144941061" rel="icon" type="image/x-icon">
+  <link href="assets/apple-touch-icon.png?v=1738144941061" rel="apple-touch-icon" sizes="180x180">
+  <link href="assets/favicon-32x32.png?v=1738144941061" rel="icon" type="image/png" sizes="32x32">
+  <link href="assets/favicon-16x16.png?v=1738144941061" rel="icon" type="image/png" sizes="16x16">
 </head>
 
 <body class="container-fluid">
@@ -1042,6 +1042,6 @@
   </div>
 </div>
 
-<script src="assets/main.bundle.js?v=1737724955109"></script>
+<script src="assets/main.bundle.js?v=1738144941061"></script>
 </body>
 </html>
diff --git a/userman_all/server/src/server.ts b/userman_all/server/src/server.ts
index 4f4ee33678e41f935d3992e2a5f6aba60b30f19c..90a306af6caa2dc8769895100209def91c0c8342 100644
--- a/userman_all/server/src/server.ts
+++ b/userman_all/server/src/server.ts
@@ -1046,8 +1046,51 @@ app.get('/reviews', isLoggedIn, async (req: Request, res: Response): Promise<voi
   }
 });
 
-/// Update Review
 
+
+/**
+ * @api {put} /reviews/:reviews_id Reisebericht bearbeiten
+ * @apiName ReiseberichtBearbeiten
+ * @apiGroup Reviews
+ *
+ * @apiDescription Aktualisiert einen bestehenden Reisebericht anhand der angegebenen ID. Der Nutzer muss eingeloggt sein, um auf diese Route zugreifen zu können.
+ *
+ * @apiHeader {String} Cookie Session-Cookie zur Authentifizierung des Nutzers.
+ *
+ * @apiParam {Number} reviews_id Die ID des zu bearbeitenden Reiseberichts (Pfad-Parameter).
+ * @apiParam {String} title Der neue Titel des Reiseberichts.
+ * @apiParam {String} description Die neue Beschreibung des Reiseberichts.
+ *
+ * @apiSuccess {String} message Bestätigungsnachricht über die erfolgreiche Bearbeitung.
+ *
+ * @apiSuccessExample Erfolg:
+ * HTTP/1.1 200 OK
+ * {
+ *   "message": "erfolgreich bearbeitet"
+ * }
+ *
+ * @apiError {String} message Fehlermeldung bei ungültigen Eingaben oder fehlgeschlagener Bearbeitung.
+ *
+ * @apiErrorExample {json} 400 Fehler (Fehlende Felder):
+ * HTTP/1.1 400 Bad Request
+ * {
+ *   "message": "füll alle Felder aus"
+ * }
+ *
+ * @apiErrorExample {json} 404 Fehler (Nicht gefunden):
+ * HTTP/1.1 404 Not Found
+ * {
+ *   "message": "der Reisebericht konnte nicht gefunden werden"
+ * }
+ *
+ * @apiErrorExample {json} 500 Fehler (Datenbankproblem):
+ * HTTP/1.1 500 Internal Server Error
+ * {
+ *   "message": "Database request failed: [Fehlerdetails]"
+ * }
+ */
+
+/// Update Review
 app.put('/reviews/:reviews_id', isLoggedIn, async (req: Request, res: Response): Promise<void> => {
   // Read data from request
   const reviews_id: number = Number(req.params.reviews_id);
@@ -1069,11 +1112,11 @@ app.put('/reviews/:reviews_id', isLoggedIn, async (req: Request, res: Response):
 
       if (result.affectedRows != 1) {
         res.status(404).send({
-          message: 'der Reisebericht konnte nicht gefunden werden',
+          message: 'Der Reisebericht konnte nicht gefunden werden',
         });
       } else {
         res.status(200).send({
-          message: `erfolgreich bearbeitet`,
+          message: `Dein Reisebericht wurde erfolgreich bearbeitet! Danke :)`,
         });
       }
     } catch (error) {
@@ -1083,11 +1126,54 @@ app.put('/reviews/:reviews_id', isLoggedIn, async (req: Request, res: Response):
     }
   } else {
     res.status(400).send({
-      message: 'füll alle Felder aus',
+      message: 'Fülle bitte alle Felder aus.',
     });
   }
 });
 
+
+
+/**
+ * @api {delete} /reviews/:reviews_id Reisebericht löschen
+ * @apiName ReiseberichtLöschen
+ * @apiGroup Reviews
+ *
+ * @apiDescription Löscht einen bestehenden Reisebericht anhand der angegebenen ID. Der Nutzer muss eingeloggt sein, um auf diese Route zugreifen zu können.
+ *
+ * @apiHeader {String} Cookie Session-Cookie zur Authentifizierung des Nutzers.
+ *
+ * @apiParam {Number} reviews_id Die ID des zu löschenden Reiseberichts (Pfad-Parameter).
+ *
+ * @apiSuccess {String} message Bestätigungsnachricht über die erfolgreiche Löschung.
+ *
+ * @apiSuccessExample Erfolg:
+ * HTTP/1.1 200 OK
+ * {
+ *   "message": "Löschen des Erfahrungsberichts war erfolgreich!"
+ * }
+ *
+ * @apiError {String} message Fehlermeldung bei ungültigen Eingaben oder fehlgeschlagener Löschung.
+ *
+ * @apiErrorExample {json} 400 Fehler (Ungültige ID):
+ * HTTP/1.1 400 Bad Request
+ * {
+ *   "message": "Ungültige ID erhalten!"
+ * }
+ *
+ * @apiErrorExample {json} 404 Fehler (Nicht gefunden):
+ * HTTP/1.1 404 Not Found
+ * {
+ *   "message": "Der Beitrag, der gelöscht werden soll, konnte nicht gefunden werden."
+ * }
+ *
+ * @apiErrorExample {json} 500 Fehler (Datenbankproblem):
+ * HTTP/1.1 500 Internal Server Error
+ * {
+ *   "message": "Database request failed: [Fehlerdetails]"
+ * }
+ */
+
+
 //Delete Review
 app.delete('/reviews/:reviews_id', isLoggedIn, async (req: Request, res: Response): Promise<void> => {
 // Read data from request
diff --git a/userman_all/server/test/horizon_changers.http b/userman_all/server/test/horizon_changers.http
index 5f7ee5099a147ebead6d1e8e5997d90d7932fbf6..a916efb51316d1e3814910aed63258633090be73 100644
--- a/userman_all/server/test/horizon_changers.http
+++ b/userman_all/server/test/horizon_changers.http
@@ -1,124 +1,113 @@
-### Login
+### Login User
 POST http://localhost:8080/login HTTP/1.1
 Content-Type: application/json
 
 {
-  "eMail": "amelieenders@gmail.com",
-  "password": "amelie"
+  "eMail": "jj@gmail.com",
+  "password": "???"
 }
 
-### Update specific user admin
-PUT http://localhost:8080/user/10 HTTP/1.1
-Content-Type: application/json
-
-{
-  "firstName": "Bruce",
-  "lastName": "Kayne",
-  "eMail": "bato",
-  "adress": "Fetzwiesen 4",
-  "role": "user"
-}
-
-### Update user
+### Update user Data in Profile
 PUT http://localhost:8080/user HTTP/1.1
 Content-Type: application/json
 
 {
-  "firstName": "Amelie",
-  "lastName": "Dralle",
-  "eMail": "amelie@gmail.com",
-  "password": "amelie"
+  "firstName": "Peter",
+  "lastName": "Shawn",
+  "eMail": "ps@gmail.com",
+  "password": "???"
 }
 
 ### Read User
-GET http://localhost:8080/user/76 HTTP/1.1
+GET http://localhost:8080/user/21 HTTP/1.1
 
 ### Read User
 GET http://localhost:8080/user/500 HTTP/1.1
 
 
-### Login
+### Login Admin
 POST http://localhost:8080/login HTTP/1.1
 Content-Type: application/json
 
 {
-  "eMail": "lilith@fa.gmx.de",
-  "password": "passwort"
+  "eMail": "sarah.gloger@outlook.com",
+  "password": "1234"
 }
 
-### Create a new user richtige Route
+### Create a new user / Registrieren Erfolgsfall
 POST http://localhost:8080/user HTTP/1.1
 Content-Type: application/json
 
 {
-  "firstName": "Daria",
-  "lastName": "Krawtschenko",
-  "eMail": "daria@gmail.com",
+  "firstName": "Bruce",
+  "lastName": "Wayne",
+  "eMail": "bat@mail.de",
   "password": "1234",
   "repeatPassword": "1234"
 }
 
-### Create a new user verschiedene Paswörter
+### Create a new user / Fehlerhafte Passwortwiederholung (Fehlerfall)
 POST http://localhost:8080/user HTTP/1.1
 Content-Type: application/json
 
 {
-  "firstName": "Leonie",
-  "lastName": "Lutz",
-  "eMail": "lutzleo@gmail.com",
-  "password": "1234",
-  "repeatPassword": "123456"
+  "firstName": "Clemens",
+  "lastName": "Witzel",
+  "eMail": "clemens.witzel@gmail.com",
+  "password": "clemi",
+  "repeatPassword": "clemi"
 }
 
-### Create a new user eMail fehlt
+### Create a new user / Fehlerfall, nicht alle Felder ausgefüllt
 POST http://localhost:8080/user HTTP/1.1
 Content-Type: application/json
 
 {
-"firstName": "Bruce",
-"lastName": "Wayne",
-"password": "1234",
-"repeatPassword": "1234"
+"firstName": "Leo",
+"lastName": "Roth",
+"password": "Leo",
+"repeatPassword": "Leo"
 }
 
-### Logout
+### Logout User
 POST http://localhost:8080/logout HTTP/1.1
 
-### Delete user Nutzer
+
+### Delete User (eigenes Profil löschen)
 DELETE  http://localhost:8080/user HTTP/1.1
 
 
-####Read Users Nutzerliste Admin
+####Read Users Admin Liste
 GET http://localhost:8080/users HTTP/1.1
 
-### Update specific user Admin
-PUT http://localhost:8080/user/70 HTTP/1.1
+### Update specific user (User 10 updaten) Admin
+PUT http://localhost:8080/user/10 HTTP/1.1
 Content-Type: application/json
 
 {
-  "firstName": "Minette",
-  "lastName": "Stark",
-  "eMail": "minette@gmail.com",
-  "adress": "Fetzwiesen 4",
+  "firstName": "Jörg",
+  "lastName": "Gloger",
+  "eMail": "jörg",
+  "adress": "Waldstraße 9, 35799 Merenberg",
   "role": "user"
 }
 
 
-### Update specific user
-PUT http://localhost:8080/user/79 HTTP/1.1
+### Update specific user (User 1 updaten, existiert nicht)
+PUT http://localhost:8080/user/1 HTTP/1.1
 Content-Type: application/json
 
 {
-  "givenName": "Selina",
-  "familyName": "Kyle"
+  "givenName": "Alina",
+  "familyName": "Hoffmann"
 }
 
-### Delete specific user
-DELETE  http://localhost:8080/user/80 HTTP/1.1
+### Delete specific user (User 7)
+DELETE  http://localhost:8080/user/7 HTTP/1.1
 
 
-### Delete specific user
-DELETE  http://localhost:8080/user/76 HTTP/1.1
+### Delete specific user (User 1)
+DELETE  http://localhost:8080/user/1 HTTP/1.1