From ab59eb9567c727d4421dc945ca1b84e35ead3fe0 Mon Sep 17 00:00:00 2001 From: taarly Date: Sat, 13 Dec 2025 14:41:31 +0100 Subject: [PATCH] added another page to create users --- app/Controllers/UserManagementController.php | 22 +++ public/index.php | 6 + public/views/createuser.php | 140 +++++++++++++++++++ public/views/partials/sidebar.php | 7 + 4 files changed, 175 insertions(+) create mode 100644 public/views/createuser.php diff --git a/app/Controllers/UserManagementController.php b/app/Controllers/UserManagementController.php index 9e35640..ca8dd24 100644 --- a/app/Controllers/UserManagementController.php +++ b/app/Controllers/UserManagementController.php @@ -100,4 +100,26 @@ class UserManagementController 'activeMenu' => 'users', ]; } + + /** + * Zeigt das Formular zum Erstellen eines Benutzers an. + * Route: index.php?route=createuser + * + * @return array + */ + public function showCreate(): array + { + $viewPath = __DIR__ . '/../../public/views/createuser.php'; + + return [ + 'view' => $viewPath, + 'data' => [ + 'error' => null, + 'success' => null, + 'loginPage' => false, + ], + 'pageTitle' => 'Benutzer erstellen', + 'activeMenu' => 'createuser', + ]; + } } diff --git a/public/index.php b/public/index.php index 70dbe3c..700d0dd 100644 --- a/public/index.php +++ b/public/index.php @@ -240,6 +240,12 @@ switch ($route) { handleResult($result); break; + case 'createuser': + requireLogin($config); + $result = $userManagementController->showCreate(); + handleResult($result); + break; + default: http_response_code(404); echo 'Route nicht gefunden.'; diff --git a/public/views/createuser.php b/public/views/createuser.php new file mode 100644 index 0000000..6584bed --- /dev/null +++ b/public/views/createuser.php @@ -0,0 +1,140 @@ + + +
+

Benutzer erstellen

+
+ + + + + + + + + +

Hier können Sie einzelne Active-Directory-Benutzer anlegen oder eine CSV-Datei hochladen, um mehrere Benutzer gleichzeitig zu erstellen.

+ +
+
+
+
+
Einzelner Benutzer
+
+
+
+
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ + +
+
+
+
+ +
+
+
+
Mehrere Benutzer via CSV
+
+
+

Die CSV-Datei sollte eine Kopfzeile mit folgenden Spalten enthalten: samaccountname,displayname,mail,password,ou,groups. Gruppen können komma-getrennt sein.

+ +
+
+ + +
+ +
+ + +
+ +
+ + +
+ + +
+
+
+
+
+ +
+
+
+
+
Hinweise
+
+
+
    +
  • Die tatsächliche Erstellung von AD-Benutzern wird serverseitig durchgeführt. Diese View sendet Daten an die Endpunkte /api/create_user.php und /api/create_users_csv.php.
  • +
  • Stellen Sie sicher, dass der Webserver die nötigen Rechte hat und die LDAP/AD-Verbindung korrekt konfiguriert ist.
  • +
  • Für Sicherheit: prüfen Sie bitte CSRF-Schutz und Validierung auf der Serverseite.
  • +
+
+
+
+
+ + diff --git a/public/views/partials/sidebar.php b/public/views/partials/sidebar.php index ea97dd7..dbe101c 100644 --- a/public/views/partials/sidebar.php +++ b/public/views/partials/sidebar.php @@ -49,6 +49,13 @@ Benutzer & Gruppen + + +