develop (#28)
Co-authored-by: tg95 <tg95@noreply.localhost> Co-authored-by: Taarly <lownslow.music@gmail.com> Co-authored-by: taarly <lownslow.music@gmail.com> Co-authored-by: ViperioN1339 <stezel1989@outlook.de> Co-authored-by: MuchenTuchen31 <yasin.mine31@gmail.com> Reviewed-on: https://git.eckertplayground.de/taarly/PHP_AdminTool_Projekt/pulls/28 Co-authored-by: blaerf <blaerf@gmx.de> Co-committed-by: blaerf <blaerf@gmx.de>
This commit is contained in:
parent
7911740ad9
commit
9f0e534e20
4
.gitignore
vendored
4
.gitignore
vendored
@ -2,4 +2,6 @@
|
||||
/.idea/
|
||||
/.vscode/
|
||||
/storage/
|
||||
/config.php
|
||||
/config.php
|
||||
/phpdoc.xml
|
||||
/tools/
|
||||
|
||||
31
README.md
31
README.md
@ -69,6 +69,8 @@ Der komplette Ablauf ist im [Gitea-Workflow](https://git.eckertplayground.de/taa
|
||||
| UI/UX anpassen | Yasin B (@Muchentuchen), Alexander M (@Alexander) |
|
||||
| Blackbox Testing | Torsten J (@tojacobs) |
|
||||
|
||||
**Hinweis:** Die Passwortanforderungen (Mindestlänge, Kategorien, keine Teile des Benutzernamens) werden beim Erstellen validiert. Die Validierung ist in `scripts/powershell/create_users_csv.ps1` implementiert und die Mockup-UI (`docs/Mockup/index.html`) zeigt die Anforderungen und prüft sie clientseitig.
|
||||
|
||||
---
|
||||
|
||||
## Dokumentation
|
||||
@ -82,6 +84,35 @@ Dieser Bereich muss von allen Entwicklern gelesen werden, bevor am Projekt gearb
|
||||
|
||||
---
|
||||
|
||||
## PowerShell Integration (Benutzererstellung)
|
||||
|
||||
Die Weboberfläche nutzt PowerShell-Skripte, um Active Directory Benutzer anzulegen. Damit dies funktioniert, sind folgende Voraussetzungen erforderlich:
|
||||
|
||||
- Der Webserver läuft auf Windows und PHP kann PowerShell ausführen (`powershell` oder `pwsh`).
|
||||
- Die PowerShell-Module `ActiveDirectory` müssen installiert (RSAT) und verfügbar sein.
|
||||
- Der Benutzer, unter dem der Webserver läuft, muss ausreichende Rechte besitzen, um `New-ADUser` und `Add-ADGroupMember` auszuführen.
|
||||
- Im `config/config.php` kann `powershell.dry_run` auf `true` gesetzt werden, um Tests ohne Änderungen durchzuführen.
|
||||
|
||||
Konfigurationsoptionen (in `config/config.php`):
|
||||
- `powershell.exe`: Name oder Pfad zur PowerShell-Executable (standard `powershell`).
|
||||
- `powershell.script_dir`: Pfad zu den PowerShell-Skripten (standard `scripts/powershell`).
|
||||
- `powershell.execution_policy`: Auszuführende ExecutionPolicy (z. B. `Bypass`).
|
||||
- `powershell.dry_run`: Wenn `true`, werden keine echten AD-Änderungen durchgeführt; das Skript meldet nur, was es tun würde.
|
||||
|
||||
Die grundlegende Funktionalität wurde mit folgenden Komponenten implementiert:
|
||||
- `public/api/create_user.php`: API-Endpoint zur Erstellung eines einzelnen Benutzers.
|
||||
- `public/api/create_users_csv.php`: API-Endpoint zur Erstellung mehrerer Benutzer aus CSV.
|
||||
- `scripts/powershell/create_user.ps1`: PowerShell-Skript zum Erstellen eines einzelnen Benutzers.
|
||||
- `scripts/powershell/create_users_csv.ps1`: PowerShell-Skript zum Erstellen mehrerer Benutzer aus CSV.
|
||||
|
||||
- `scripts/powershell/check_environment.ps1`: Prüft, ob `ActiveDirectory`-Modul vorhanden ist und zeigt die ausführende Identität an.
|
||||
|
||||
API endpoints:
|
||||
- `public/api/powershell_check.php`: Ruft `check_environment.ps1` auf und gibt ein JSON-Objekt mit `actor`, `module_installed`, `can_new_aduser` zurück.
|
||||
|
||||
Bitte testen zuerst mit `powershell.dry_run = true` und prüfen sie die resultierenden Meldungen in UI.
|
||||
|
||||
|
||||
## Mitwirken
|
||||
|
||||
Wer etwas ändern oder erweitern möchte:
|
||||
|
||||
123
app/Controllers/LogViewerController.php
Normal file
123
app/Controllers/LogViewerController.php
Normal file
@ -0,0 +1,123 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace App\Controllers;
|
||||
|
||||
use App\Services\Logging\LoggingService;
|
||||
use App\Services\Logging\LogViewerService;
|
||||
|
||||
/**
|
||||
* Controller für den Log Viewer (read-only).
|
||||
*/
|
||||
class LogViewerController
|
||||
{
|
||||
/** @var array<string, mixed> */
|
||||
private array $config;
|
||||
|
||||
private LoggingService $logger;
|
||||
private LogViewerService $logViewer;
|
||||
|
||||
/**
|
||||
* @param array<string, mixed> $config
|
||||
*/
|
||||
public function __construct(array $config)
|
||||
{
|
||||
$this->config = $config;
|
||||
|
||||
$loggingConfig = $config['logging'] ?? [];
|
||||
$this->logger = new LoggingService($loggingConfig);
|
||||
$this->logViewer = new LogViewerService($loggingConfig);
|
||||
}
|
||||
|
||||
/**
|
||||
* Zeigt den Log Viewer an.
|
||||
*
|
||||
* Erwartet optionale GET-Parameter:
|
||||
* - file (Dateiname, z.B. app.log)
|
||||
* - level (DEBUG|INFO|WARNING|ERROR)
|
||||
* - q (Suche)
|
||||
* - lines (Anzahl Zeilen, Default 200)
|
||||
*
|
||||
* @return array<string, mixed>
|
||||
*/
|
||||
public function show(): array
|
||||
{
|
||||
$files = $this->logViewer->listLogFiles();
|
||||
|
||||
$selectedFile = (string)($_GET['file'] ?? '');
|
||||
if ($selectedFile === '' && isset($files[0]['name'])) {
|
||||
$selectedFile = (string)$files[0]['name'];
|
||||
}
|
||||
|
||||
$level = (string)($_GET['level'] ?? '');
|
||||
$level = strtoupper(trim($level));
|
||||
if ($level === '') {
|
||||
$level = '';
|
||||
}
|
||||
|
||||
$q = (string)($_GET['q'] ?? '');
|
||||
$q = trim($q);
|
||||
|
||||
$lines = (int)($_GET['lines'] ?? 200);
|
||||
if ($lines <= 0) {
|
||||
$lines = 200;
|
||||
}
|
||||
if ($lines > 2000) {
|
||||
$lines = 2000;
|
||||
}
|
||||
|
||||
$error = null;
|
||||
$fileMeta = null;
|
||||
$entries = [];
|
||||
|
||||
try {
|
||||
if ($selectedFile !== '') {
|
||||
$fileMeta = $this->logViewer->getFileMeta($selectedFile);
|
||||
$entries = $this->logViewer->getEntries(
|
||||
$selectedFile,
|
||||
$lines,
|
||||
$level !== '' ? $level : null,
|
||||
$q !== '' ? $q : null
|
||||
);
|
||||
|
||||
if ($fileMeta === null) {
|
||||
$error = 'Die ausgewählte Log-Datei ist nicht verfügbar.';
|
||||
$entries = [];
|
||||
}
|
||||
} else {
|
||||
$error = 'Es wurde keine Log-Datei gefunden.';
|
||||
}
|
||||
} catch (\Throwable $ex) {
|
||||
$this->logger->logException(
|
||||
'LogViewerController: Fehler beim Laden der Logs.',
|
||||
$ex,
|
||||
[
|
||||
'route' => 'logs',
|
||||
'file' => $selectedFile,
|
||||
]
|
||||
);
|
||||
|
||||
$error = 'Technischer Fehler beim Laden der Logs. Details stehen im app.log.';
|
||||
}
|
||||
|
||||
$viewPath = __DIR__ . '/../../public/views/logs.php';
|
||||
|
||||
return [
|
||||
'view' => $viewPath,
|
||||
'data' => [
|
||||
'loginPage' => false,
|
||||
'files' => $files,
|
||||
'selectedFile' => $selectedFile,
|
||||
'fileMeta' => $fileMeta,
|
||||
'entries' => $entries,
|
||||
'filterLevel' => $level,
|
||||
'searchQuery' => $q,
|
||||
'lines' => $lines,
|
||||
'error' => $error,
|
||||
],
|
||||
'pageTitle' => 'Logs',
|
||||
'activeMenu' => 'logs',
|
||||
];
|
||||
}
|
||||
}
|
||||
@ -100,4 +100,49 @@ class UserManagementController
|
||||
'activeMenu' => 'users',
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Zeigt die Seite zum Erstellen von Benutzern (Einzel/CSV).
|
||||
*
|
||||
* @return array<string, mixed>
|
||||
*/
|
||||
public function create(): array
|
||||
{
|
||||
$viewPath = __DIR__ . '/../../public/views/createuser.php';
|
||||
|
||||
// Use session flash messages if available
|
||||
$error = null;
|
||||
$success = null;
|
||||
if (session_status() !== PHP_SESSION_ACTIVE) {
|
||||
@session_start();
|
||||
}
|
||||
if (isset($_SESSION['flash_error'])) {
|
||||
$error = $_SESSION['flash_error'];
|
||||
unset($_SESSION['flash_error']);
|
||||
}
|
||||
if (isset($_SESSION['flash_success'])) {
|
||||
$success = $_SESSION['flash_success'];
|
||||
unset($_SESSION['flash_success']);
|
||||
}
|
||||
$csvDetails = null;
|
||||
if (isset($_SESSION['csv_details'])) {
|
||||
$csvDetails = $_SESSION['csv_details'];
|
||||
unset($_SESSION['csv_details']);
|
||||
}
|
||||
|
||||
$powershellDryRun = $this->config['powershell']['dry_run'] ?? false;
|
||||
|
||||
return [
|
||||
'view' => $viewPath,
|
||||
'data' => [
|
||||
'error' => $error,
|
||||
'success' => $success,
|
||||
'loginPage' => false,
|
||||
'csvDetails' => $csvDetails,
|
||||
'powershellDryRun' => $powershellDryRun,
|
||||
],
|
||||
'pageTitle' => 'Benutzer erstellen',
|
||||
'activeMenu' => 'createuser',
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
319
app/Services/Logging/LogViewerService.php
Normal file
319
app/Services/Logging/LogViewerService.php
Normal file
@ -0,0 +1,319 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace App\Services\Logging;
|
||||
|
||||
/**
|
||||
* LogViewerService
|
||||
*
|
||||
* - Listet Log-Dateien im konfigurierten Logging-Verzeichnis.
|
||||
* - Liest performant die letzten N Zeilen (Tail), ohne komplette Datei zu laden.
|
||||
* - Parst das LoggingService-Format:
|
||||
* "[YYYY-MM-DD HH:MM:SS] LEVEL message {json}"
|
||||
*/
|
||||
class LogViewerService
|
||||
{
|
||||
private string $logDir;
|
||||
|
||||
/**
|
||||
* @param array<string, mixed> $loggingConfig Teilkonfiguration "logging" aus config.php
|
||||
*/
|
||||
public function __construct(array $loggingConfig)
|
||||
{
|
||||
$baseDir = $loggingConfig['log_dir'] ?? (__DIR__ . '/../../../public/logs');
|
||||
$this->logDir = rtrim((string)$baseDir, DIRECTORY_SEPARATOR);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array<int, array{name:string, size:int, mtime:int}>
|
||||
*/
|
||||
public function listLogFiles(): array
|
||||
{
|
||||
$result = [];
|
||||
|
||||
if (is_dir($this->logDir) === false) {
|
||||
return $result;
|
||||
}
|
||||
|
||||
$entries = @scandir($this->logDir);
|
||||
if ($entries === false) {
|
||||
return $result;
|
||||
}
|
||||
|
||||
foreach ($entries as $name) {
|
||||
if ($name === '.' || $name === '..') {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Nur normale Dateien, keine Unterordner.
|
||||
$fullPath = $this->logDir . DIRECTORY_SEPARATOR . $name;
|
||||
if (is_file($fullPath) === false) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Safety: nur "logartige" Dateien anzeigen.
|
||||
$lower = strtolower($name);
|
||||
if (
|
||||
str_ends_with($lower, '.log') === false
|
||||
&& str_ends_with($lower, '.txt') === false
|
||||
) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$size = @filesize($fullPath);
|
||||
$mtime = @filemtime($fullPath);
|
||||
|
||||
$result[] = [
|
||||
'name' => $name,
|
||||
'size' => is_int($size) ? $size : 0,
|
||||
'mtime' => is_int($mtime) ? $mtime : 0,
|
||||
];
|
||||
}
|
||||
|
||||
// Neueste zuerst
|
||||
usort(
|
||||
$result,
|
||||
static function (array $a, array $b): int {
|
||||
return ($b['mtime'] ?? 0) <=> ($a['mtime'] ?? 0);
|
||||
}
|
||||
);
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Liefert Metadaten zur ausgewählten Datei (oder null wenn ungültig).
|
||||
*
|
||||
* @return array{name:string, size:int, mtime:int}|null
|
||||
*/
|
||||
public function getFileMeta(string $fileName): ?array
|
||||
{
|
||||
$path = $this->resolveLogFilePath($fileName);
|
||||
if ($path === null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$size = @filesize($path);
|
||||
$mtime = @filemtime($path);
|
||||
|
||||
return [
|
||||
'name' => basename($path),
|
||||
'size' => is_int($size) ? $size : 0,
|
||||
'mtime' => is_int($mtime) ? $mtime : 0,
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $fileName
|
||||
* @param int $maxLines
|
||||
* @param string|null $levelFilter z.B. "ERROR"|"WARNING"|"INFO"|"DEBUG"|null
|
||||
* @param string|null $search Freitextsuche in message/context/raw
|
||||
*
|
||||
* @return array<int, array{
|
||||
* ts:string|null,
|
||||
* level:string|null,
|
||||
* message:string,
|
||||
* context:array<string,mixed>|null,
|
||||
* raw:string
|
||||
* }>
|
||||
*/
|
||||
public function getEntries(string $fileName, int $maxLines = 200, ?string $levelFilter = null, ?string $search = null): array
|
||||
{
|
||||
$path = $this->resolveLogFilePath($fileName);
|
||||
if ($path === null) {
|
||||
return [];
|
||||
}
|
||||
|
||||
$lines = $this->tailLines($path, $maxLines);
|
||||
|
||||
$entries = [];
|
||||
foreach ($lines as $line) {
|
||||
$parsed = $this->parseLine($line);
|
||||
|
||||
if ($levelFilter !== null && $levelFilter !== '') {
|
||||
$lvl = strtoupper((string)($parsed['level'] ?? ''));
|
||||
if ($lvl !== strtoupper($levelFilter)) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if ($search !== null && $search !== '') {
|
||||
$haystack = $parsed['raw'] . ' ' . $parsed['message'];
|
||||
|
||||
if (is_array($parsed['context'])) {
|
||||
$haystack .= ' ' . (string)json_encode($parsed['context'], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES);
|
||||
}
|
||||
|
||||
if (mb_stripos($haystack, $search) === false) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
$entries[] = $parsed;
|
||||
}
|
||||
|
||||
return $entries;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null Vollständiger Pfad oder null, wenn ungültig/Traversal
|
||||
*/
|
||||
private function resolveLogFilePath(string $fileName): ?string
|
||||
{
|
||||
$fileName = trim($fileName);
|
||||
if ($fileName === '') {
|
||||
return null;
|
||||
}
|
||||
|
||||
// Keine Pfade erlauben, nur Dateiname
|
||||
$fileName = basename($fileName);
|
||||
|
||||
$candidate = $this->logDir . DIRECTORY_SEPARATOR . $fileName;
|
||||
|
||||
$realDir = realpath($this->logDir);
|
||||
$realFile = realpath($candidate);
|
||||
|
||||
if ($realDir === false || $realFile === false) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// Muss innerhalb des Log-Verzeichnisses liegen
|
||||
$realDirNorm = rtrim($realDir, DIRECTORY_SEPARATOR) . DIRECTORY_SEPARATOR;
|
||||
$realFileNorm = $realFile;
|
||||
|
||||
if (str_starts_with($realFileNorm, $realDirNorm) === false) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (is_file($realFileNorm) === false) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return $realFileNorm;
|
||||
}
|
||||
|
||||
/**
|
||||
* Tail-Implementierung: liest die letzten $maxLines Zeilen.
|
||||
*
|
||||
* @return array<int, string>
|
||||
*/
|
||||
private function tailLines(string $filePath, int $maxLines): array
|
||||
{
|
||||
$maxLines = max(1, min(2000, $maxLines));
|
||||
|
||||
$fh = @fopen($filePath, 'rb');
|
||||
if ($fh === false) {
|
||||
return [];
|
||||
}
|
||||
|
||||
$chunkSize = 8192;
|
||||
$buffer = '';
|
||||
$pos = -1;
|
||||
$linesFound = 0;
|
||||
|
||||
// ans Ende springen
|
||||
@fseek($fh, 0, SEEK_END);
|
||||
$fileSize = (int)@ftell($fh);
|
||||
if ($fileSize <= 0) {
|
||||
@fclose($fh);
|
||||
return [];
|
||||
}
|
||||
|
||||
while ($linesFound <= $maxLines && -$pos < $fileSize) {
|
||||
$readSize = $chunkSize;
|
||||
if (-$pos + $chunkSize > $fileSize) {
|
||||
$readSize = $fileSize - (-$pos);
|
||||
}
|
||||
|
||||
@fseek($fh, $pos - $readSize + 1, SEEK_END);
|
||||
$chunk = (string)@fread($fh, $readSize);
|
||||
|
||||
$buffer = $chunk . $buffer;
|
||||
$linesFound = substr_count($buffer, "\n");
|
||||
|
||||
$pos -= $readSize;
|
||||
}
|
||||
|
||||
@fclose($fh);
|
||||
|
||||
$lines = preg_split("/\r\n|\n|\r/", $buffer);
|
||||
if (is_array($lines) === false) {
|
||||
return [];
|
||||
}
|
||||
|
||||
// ggf. letzte leere Zeile raus
|
||||
if (end($lines) === '') {
|
||||
array_pop($lines);
|
||||
}
|
||||
|
||||
// letzte maxLines
|
||||
$lines = array_slice($lines, -$maxLines);
|
||||
|
||||
// Leere Zeilen am Anfang/Ende tolerieren, aber nicht komplett aufblasen
|
||||
$clean = [];
|
||||
foreach ($lines as $line) {
|
||||
$line = (string)$line;
|
||||
if ($line === '') {
|
||||
continue;
|
||||
}
|
||||
$clean[] = $line;
|
||||
}
|
||||
|
||||
return $clean;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array{
|
||||
* ts:string|null,
|
||||
* level:string|null,
|
||||
* message:string,
|
||||
* context:array<string,mixed>|null,
|
||||
* raw:string
|
||||
* }
|
||||
*/
|
||||
private function parseLine(string $line): array
|
||||
{
|
||||
$raw = $line;
|
||||
|
||||
$ts = null;
|
||||
$level = null;
|
||||
$message = $line;
|
||||
$context = null;
|
||||
|
||||
// Basis: [timestamp] LEVEL ...
|
||||
if (preg_match('/^\[(?<ts>[0-9\-:\s]{19})\]\s+(?<lvl>[A-Z]+)\s+(?<rest>.*)$/', $line, $m) === 1) {
|
||||
$ts = (string)$m['ts'];
|
||||
$level = (string)$m['lvl'];
|
||||
$rest = (string)$m['rest'];
|
||||
|
||||
// Versuch: Context ist am Ende ein JSON-Objekt, das mit "{" beginnt und mit "}" endet.
|
||||
$ctxCandidate = null;
|
||||
|
||||
$lastBracePos = strrpos($rest, '{');
|
||||
if ($lastBracePos !== false) {
|
||||
$maybeJson = substr($rest, $lastBracePos);
|
||||
$maybeJson = trim($maybeJson);
|
||||
|
||||
if ($maybeJson !== '' && str_starts_with($maybeJson, '{') && str_ends_with($maybeJson, '}')) {
|
||||
$decoded = json_decode($maybeJson, true);
|
||||
if (is_array($decoded)) {
|
||||
$ctxCandidate = $decoded;
|
||||
$rest = trim(substr($rest, 0, $lastBracePos));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$context = $ctxCandidate;
|
||||
$message = $rest;
|
||||
}
|
||||
|
||||
return [
|
||||
'ts' => $ts,
|
||||
'level' => $level,
|
||||
'message' => $message,
|
||||
'context' => $context,
|
||||
'raw' => $raw,
|
||||
];
|
||||
}
|
||||
}
|
||||
@ -67,7 +67,12 @@ class SnmpServerStatusService
|
||||
// Hilfsfunktion: SNMP-Werte bereinigen (z.B. "INTEGER: 123" -> 123)
|
||||
$cleanSnmpValue = fn($v) => (int)filter_var($v, FILTER_SANITIZE_NUMBER_INT);
|
||||
|
||||
// --- 2. Uptime abfragen ---
|
||||
// --- 2. Hostname abfragen (dynamisch, nicht hardcoded) ---
|
||||
$hostnameOid = $oids['hostname'] ?? '1.3.6.1.2.1.1.5.0'; // sysName OID
|
||||
$hostnameResult = @snmpget($host, $community, $hostnameOid, $timeout, $retries);
|
||||
$hostnameFromSnmp = $hostnameResult ? trim(str_ireplace('STRING:', '', $hostnameResult), ' "') : $host;
|
||||
|
||||
// --- 3. Uptime abfragen ---
|
||||
$uptimeOid = $oids['uptime'] ?? '1.3.6.1.2.1.1.3.0';
|
||||
$uptimeResult = @snmpget($host, $community, $uptimeOid, $timeout, $retries);
|
||||
if ($uptimeResult === false) {
|
||||
@ -86,7 +91,7 @@ class SnmpServerStatusService
|
||||
(int)($uptimeSeconds % 60)
|
||||
);
|
||||
|
||||
// --- 3. CPU (Durchschnitt über alle Kerne) ---
|
||||
// --- 4. CPU (Durchschnitt über alle Kerne) ---
|
||||
$cpuTable = $oids['cpu_table'] ?? '1.3.6.1.2.1.25.3.3.1.2';
|
||||
$cpuValues = @snmpwalk($host, $community, $cpuTable, $timeout, $retries);
|
||||
|
||||
@ -97,7 +102,7 @@ class SnmpServerStatusService
|
||||
$cpuValues = array_map($cleanSnmpValue, $cpuValues);
|
||||
$cpuAvg = (int)round(array_sum($cpuValues) / count($cpuValues));
|
||||
|
||||
// --- 4. Storage-Tabellen (RAM + Disks) ---
|
||||
// --- 5. Storage-Tabellen (RAM + Disks) ---
|
||||
$descrOid = $oids['storage_descr'] ?? '1.3.6.1.2.1.25.2.3.1.3';
|
||||
$unitsOid = $oids['storage_units'] ?? '1.3.6.1.2.1.25.2.3.1.4';
|
||||
$sizeOid = $oids['storage_size'] ?? '1.3.6.1.2.1.25.2.3.1.5';
|
||||
@ -118,7 +123,7 @@ class SnmpServerStatusService
|
||||
$size = array_map($cleanSnmpValue, $size);
|
||||
$used = array_map($cleanSnmpValue, $used);
|
||||
|
||||
// --- 5. RAM mit Fallback-Logik ---
|
||||
// --- 6. RAM mit Fallback-Logik ---
|
||||
$ramPercent = null;
|
||||
$memTotalBytes = null;
|
||||
|
||||
@ -163,7 +168,7 @@ class SnmpServerStatusService
|
||||
throw new RuntimeException("Konnte 'Physical Memory' in der SNMP Storage-Tabelle nicht finden.");
|
||||
}
|
||||
|
||||
// --- 6. Disk C: / Root mit Fallback-Logik ---
|
||||
// --- 7. Disk C: / Root mit Fallback-Logik ---
|
||||
$diskCPercent = null;
|
||||
|
||||
// Heuristik 1: Suche nach C:\
|
||||
@ -212,9 +217,9 @@ class SnmpServerStatusService
|
||||
throw new RuntimeException("Konnte Laufwerk 'C:\\' oder Root-Partition in der SNMP Storage-Tabelle nicht finden.");
|
||||
}
|
||||
|
||||
// --- 7. Status-Array zusammenbauen ---
|
||||
// --- 8. Status-Array zusammenbauen ---
|
||||
$status = [
|
||||
'hostname' => $host,
|
||||
'hostname' => $hostnameFromSnmp,
|
||||
'os' => 'Windows Server', // TODO: OS dynamisch per SNMP abfragen (OID 1.3.6.1.2.1.1.1.0)
|
||||
'uptime' => $uptimeFormatted,
|
||||
'cpu_usage' => $cpuAvg,
|
||||
|
||||
@ -36,6 +36,7 @@ return [
|
||||
|
||||
// Platzhalter für OIDs – später können wir die auf echte Werte setzen
|
||||
'oids' => [
|
||||
'hostname' => '1.3.6.1.2.1.1.5.0', // sysName - Hostname des Servers
|
||||
'uptime' => '1.3.6.1.2.1.1.3.0',
|
||||
|
||||
// CPU pro Kern
|
||||
@ -59,4 +60,16 @@ return [
|
||||
// Minimale Stufe: debug, info, warning, error
|
||||
'min_level' => 'info',
|
||||
],
|
||||
'powershell' => [
|
||||
// Executable name: 'powershell' on Windows, 'pwsh' for PowerShell core.
|
||||
'exe' => 'powershell',
|
||||
// Script directory where the PS1 scripts live (relative to config dir)
|
||||
'script_dir' => __DIR__ . '/../scripts/powershell',
|
||||
// Execution policy to pass to the PowerShell invocation
|
||||
'execution_policy' => 'Bypass',
|
||||
// Default OU. IIS only has write access there.
|
||||
'default_ou' => 'OU=WebAppUsers,DC=ITFA-PROJ-DOM,DC=local',
|
||||
// For testing; if true, the scripts will run in dry-run mode (no real AD changes)
|
||||
'dry_run' => false,
|
||||
],
|
||||
];
|
||||
|
||||
@ -262,6 +262,10 @@
|
||||
|
||||
background-color: var(--color-secondary);
|
||||
}
|
||||
|
||||
/* Password hint and invalid input styles */
|
||||
.password-hint { display:block; margin-top: 6px; font-size: 0.9rem; color: #6c757d; }
|
||||
.invalid { border: 1px solid #c0152f; background-color: rgba(192,21,47,0.04); }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
@ -280,6 +284,7 @@
|
||||
<div class="form-group">
|
||||
<label for="password">Passwort</label>
|
||||
<input type="password" id="password" name="password" required>
|
||||
<small class="text-muted password-hint">Das Passwort muss mindestens 7 Zeichen lang sein, darf keine größeren Teile des Benutzernamens enthalten und muss Zeichen aus mindestens 3 von 4 Kategorien enthalten: Großbuchstaben, Kleinbuchstaben, Ziffern, Sonderzeichen.</small>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
@ -377,14 +382,60 @@
|
||||
}
|
||||
}
|
||||
|
||||
function validatePasswordJS(password, sam) {
|
||||
const errors = [];
|
||||
if (!password || password.length < 7) {
|
||||
errors.push('Passwort muss mindestens 7 Zeichen lang sein.');
|
||||
}
|
||||
let categories = 0;
|
||||
if (/[A-Z]/.test(password)) categories++;
|
||||
if (/[a-z]/.test(password)) categories++;
|
||||
if (/\d/.test(password)) categories++;
|
||||
if (/[^A-Za-z0-9]/.test(password)) categories++;
|
||||
if (categories < 3) {
|
||||
errors.push('Passwort muss Zeichen aus mindestens 3 von 4 Kategorien enthalten.');
|
||||
}
|
||||
if (sam) {
|
||||
const pwLower = password.toLowerCase();
|
||||
const samLower = sam.toLowerCase();
|
||||
if (pwLower.includes(samLower)) {
|
||||
errors.push('Passwort darf den Benutzernamen nicht enthalten.');
|
||||
} else {
|
||||
const minLen = 4;
|
||||
if (samLower.length >= minLen) {
|
||||
outer: for (let len = minLen; len <= samLower.length; len++) {
|
||||
for (let s = 0; s <= samLower.length - len; s++) {
|
||||
const sub = samLower.substr(s, len);
|
||||
if (pwLower.includes(sub)) {
|
||||
errors.push('Passwort darf keine größeren Teile des Benutzernamens enthalten.');
|
||||
break outer;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return errors;
|
||||
}
|
||||
|
||||
document.getElementById('adForm').addEventListener('submit', (e) => {
|
||||
e.preventDefault();
|
||||
|
||||
|
||||
const firstname = document.getElementById('firstname').value.trim();
|
||||
const lastname = document.getElementById('lastname').value.trim();
|
||||
const samGuess = (firstname + lastname).replace(/\s+/g, '');
|
||||
const password = document.getElementById('password').value;
|
||||
const pwErrors = validatePasswordJS(password, samGuess);
|
||||
if (pwErrors.length > 0) {
|
||||
alert('Passwort ungültig:\n' + pwErrors.join('\n'));
|
||||
return;
|
||||
}
|
||||
|
||||
const formData = {
|
||||
firstname: document.getElementById('firstname').value,
|
||||
lastname: document.getElementById('lastname').value,
|
||||
firstname: firstname,
|
||||
lastname: lastname,
|
||||
group: document.getElementById('group').value,
|
||||
password: document.getElementById('password').value,
|
||||
password: password,
|
||||
customFields: {}
|
||||
};
|
||||
|
||||
@ -442,6 +493,9 @@
|
||||
|
||||
// Datenzeilen erstellen (mit editierbaren Inputs)
|
||||
tableBody.innerHTML = '';
|
||||
const pwdHeaderIndex = headers.findIndex(h => /pass(word)?/i.test(h));
|
||||
const samHeaderIndex = headers.findIndex(h => /(sam(accountname)?)|samaccountname/i.test(h));
|
||||
let foundInvalid = false;
|
||||
for (let i = 1; i < csvData.length; i++) {
|
||||
const row = csvData[i];
|
||||
const tr = document.createElement('tr');
|
||||
@ -454,6 +508,10 @@
|
||||
input.dataset.col = index;
|
||||
input.addEventListener('input', (e) => {
|
||||
csvData[i][index] = e.target.value;
|
||||
// live re-validate if this is password or sam column
|
||||
if (index === pwdHeaderIndex || index === samHeaderIndex) {
|
||||
validateCsvPasswords(headers);
|
||||
}
|
||||
});
|
||||
td.appendChild(input);
|
||||
tr.appendChild(td);
|
||||
@ -461,10 +519,53 @@
|
||||
tableBody.appendChild(tr);
|
||||
}
|
||||
|
||||
// Validate password column if present
|
||||
function validateCsvPasswords(headersLocal) {
|
||||
const pwdIdx = pwdHeaderIndex;
|
||||
const samIdx = samHeaderIndex;
|
||||
foundInvalid = false;
|
||||
// Clear previous highlights/messages
|
||||
const rows = tableBody.querySelectorAll('tr');
|
||||
rows.forEach((r, idx) => {
|
||||
r.querySelectorAll('input').forEach(inp => inp.classList.remove('invalid'));
|
||||
});
|
||||
|
||||
if (pwdIdx >= 0) {
|
||||
for (let r = 0; r < rows.length; r++) {
|
||||
const inputs = rows[r].querySelectorAll('input');
|
||||
const pwdVal = inputs[pwdIdx] ? inputs[pwdIdx].value : '';
|
||||
const samVal = (samIdx >= 0 && inputs[samIdx]) ? inputs[samIdx].value : '';
|
||||
const errs = validatePasswordJS(pwdVal, samVal);
|
||||
if (errs.length > 0) {
|
||||
foundInvalid = true;
|
||||
if (inputs[pwdIdx]) inputs[pwdIdx].classList.add('invalid');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const previewInfo = previewDiv.querySelector('.preview-info');
|
||||
if (!previewInfo) return;
|
||||
if (foundInvalid) {
|
||||
previewInfo.innerHTML = '<strong>Hinweis:</strong> Einige Passwörter entsprechen nicht den Anforderungen. Bitte korrigieren Sie diese in der Tabelle bevor Sie importieren.';
|
||||
} else {
|
||||
previewInfo.innerHTML = '<strong>Hinweis:</strong> Sie können die Werte direkt in der Tabelle bearbeiten, bevor Sie importieren.';
|
||||
}
|
||||
}
|
||||
|
||||
// initial validation run
|
||||
validateCsvPasswords(headers);
|
||||
|
||||
previewDiv.style.display = 'block';
|
||||
}
|
||||
|
||||
function importCSVData() {
|
||||
// Prevent import if any password entries are invalid (highlighted)
|
||||
const invalids = document.querySelectorAll('#csvTableBody input.invalid');
|
||||
if (invalids.length > 0) {
|
||||
alert('Import abgebrochen: Es gibt ungültige Passwörter in der CSV-Vorschau. Bitte korrigieren Sie diese zuerst.');
|
||||
return;
|
||||
}
|
||||
|
||||
console.log('Importierte CSV-Daten:', csvData);
|
||||
alert(`${csvData.length - 1} Benutzer erfolgreich importiert!\n\nDaten in der Konsole (F12) einsehen.`);
|
||||
cancelCSVPreview();
|
||||
|
||||
721
docs/api/classes/App-Controllers-AuthController.html
Normal file
721
docs/api/classes/App-Controllers-AuthController.html
Normal file
@ -0,0 +1,721 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app.html">App</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-controllers.html">Controllers</a></li>
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -class">
|
||||
<h2 class="phpdocumentor-content__title">
|
||||
AuthController
|
||||
|
||||
|
||||
<div class="phpdocumentor-element__package">
|
||||
in package
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</h2>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/AuthController.php"><a href="files/app-controllers-authcontroller.html"><abbr title="app/Controllers/AuthController.php">AuthController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">22</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Zuständig für alles rund um den Login:
|
||||
- Login-Formular anzeigen
|
||||
- Login-Daten verarbeiten (Authentifizierung gegen LDAP/AD)
|
||||
- Logout durchführen</p>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>NEU:</p>
|
||||
<ul>
|
||||
<li>Statt direkt HTML auszugeben oder header()-Redirects zu setzen,
|
||||
liefert der Controller "View-Results" zurück, die von index.php
|
||||
und einem zentralen Layout verarbeitet werden.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="classes/App-Controllers-AuthController.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-properties">
|
||||
Properties
|
||||
<a href="classes/App-Controllers-AuthController.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Controllers-AuthController.html#property_config">$config</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Controllers-AuthController.html#property_ldapAuthService">$ldapAuthService</a>
|
||||
<span>
|
||||
: <a href="classes/App-Services-Ldap-LdapAuthService.html"><abbr title="\App\Services\Ldap\LdapAuthService">LdapAuthService</abbr></a> </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Controllers-AuthController.html#property_logger">$logger</a>
|
||||
<span>
|
||||
: <a href="classes/App-Services-Logging-LoggingService.html"><abbr title="\App\Services\Logging\LoggingService">LoggingService</abbr></a> </span>
|
||||
</dt>
|
||||
|
||||
</dl>
|
||||
|
||||
<h4 id="toc-methods">
|
||||
Methods
|
||||
<a href="classes/App-Controllers-AuthController.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-AuthController.html#method___construct">__construct()</a>
|
||||
<span>
|
||||
: mixed </span>
|
||||
</dt>
|
||||
<dd>Übergibt die Konfiguration an den Controller und initialisiert den LDAP-Authentifizierungsservice.</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-AuthController.html#method_logout">logout()</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
<dd>Meldet den aktuell eingeloggten Benutzer ab, indem der entsprechende Session-Eintrag entfernt wird,
|
||||
und liefert anschließend ein Redirect-Result zurück auf die Login-Seite.</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-AuthController.html#method_processLogin">processLogin()</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
<dd>Verarbeitet das Login-Formular:
|
||||
- Liest Benutzername und Passwort aus $_POST
|
||||
- Ruft den LdapAuthService zur Authentifizierung auf
|
||||
- Liefert bei Erfolg ein Redirect-Result zum Dashboard
|
||||
- Liefert bei Fehlern ein View-Result für das Login-Formular mit Fehlermeldung</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-AuthController.html#method_showLoginForm">showLoginForm()</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
<dd>Zeigt das Login-Formular an.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="phpdocumentor-properties">
|
||||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||||
Properties
|
||||
<a href="classes/App-Controllers-AuthController.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_config">
|
||||
$config
|
||||
<a href="classes/App-Controllers-AuthController.html#property_config" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/AuthController.php"><a href="files/app-controllers-authcontroller.html"><abbr title="app/Controllers/AuthController.php">AuthController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">25</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">array<string, mixed></span>
|
||||
<span class="phpdocumentor-signature__name">$config</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Konfigurationswerte der Anwendung (aus config.php)</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_ldapAuthService">
|
||||
$ldapAuthService
|
||||
<a href="classes/App-Controllers-AuthController.html#property_ldapAuthService" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/AuthController.php"><a href="files/app-controllers-authcontroller.html"><abbr title="app/Controllers/AuthController.php">AuthController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">28</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type"><a href="classes/App-Services-Ldap-LdapAuthService.html"><abbr title="\App\Services\Ldap\LdapAuthService">LdapAuthService</abbr></a></span>
|
||||
<span class="phpdocumentor-signature__name">$ldapAuthService</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Service, der die eigentliche LDAP/AD-Authentifizierung übernimmt</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_logger">
|
||||
$logger
|
||||
<a href="classes/App-Controllers-AuthController.html#property_logger" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/AuthController.php"><a href="files/app-controllers-authcontroller.html"><abbr title="app/Controllers/AuthController.php">AuthController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">31</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type"><a href="classes/App-Services-Logging-LoggingService.html"><abbr title="\App\Services\Logging\LoggingService">LoggingService</abbr></a></span>
|
||||
<span class="phpdocumentor-signature__name">$logger</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Logger für technische Fehler</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-methods">
|
||||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||||
Methods
|
||||
<a href="classes/App-Controllers-AuthController.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||||
__construct()
|
||||
<a href="classes/App-Controllers-AuthController.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/AuthController.php"><a href="files/app-controllers-authcontroller.html"><abbr title="app/Controllers/AuthController.php">AuthController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">38</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Übergibt die Konfiguration an den Controller und initialisiert den LDAP-Authentifizierungsservice.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$config</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$config</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Vollständige Konfiguration aus config.php</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_logout">
|
||||
logout()
|
||||
<a href="classes/App-Controllers-AuthController.html#method_logout" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/AuthController.php"><a href="files/app-controllers-authcontroller.html"><abbr title="app/Controllers/AuthController.php">AuthController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">150</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Meldet den aktuell eingeloggten Benutzer ab, indem der entsprechende Session-Eintrag entfernt wird,
|
||||
und liefert anschließend ein Redirect-Result zurück auf die Login-Seite.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">logout</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string, mixed></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<string, mixed></span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>Redirect-Result</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_processLogin">
|
||||
processLogin()
|
||||
<a href="classes/App-Controllers-AuthController.html#method_processLogin" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/AuthController.php"><a href="files/app-controllers-authcontroller.html"><abbr title="app/Controllers/AuthController.php">AuthController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">84</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Verarbeitet das Login-Formular:
|
||||
- Liest Benutzername und Passwort aus $_POST
|
||||
- Ruft den LdapAuthService zur Authentifizierung auf
|
||||
- Liefert bei Erfolg ein Redirect-Result zum Dashboard
|
||||
- Liefert bei Fehlern ein View-Result für das Login-Formular mit Fehlermeldung</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">processLogin</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string, mixed></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<string, mixed></span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>View-Result ODER Redirect-Result</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_showLoginForm">
|
||||
showLoginForm()
|
||||
<a href="classes/App-Controllers-AuthController.html#method_showLoginForm" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/AuthController.php"><a href="files/app-controllers-authcontroller.html"><abbr title="app/Controllers/AuthController.php">AuthController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">57</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Zeigt das Login-Formular an.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">showLoginForm</span><span>(</span><span class="phpdocumentor-signature__argument"><span>[</span><span class="phpdocumentor-signature__argument__return-type">string|null </span><span class="phpdocumentor-signature__argument__name">$errorMessage</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string, mixed></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
<section class="phpdocumentor-description"><p>Optional kann eine Fehlermeldung übergeben werden, die in der View dargestellt wird.</p>
|
||||
</section>
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$errorMessage</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
|
||||
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<string, mixed></span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>View-Result für das zentrale Layout</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Controllers/AuthController.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="classes/App-Controllers-AuthController.html#toc-properties">Properties</a></li>
|
||||
<li><a href="classes/App-Controllers-AuthController.html#toc-methods">Methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Controllers-AuthController.html#property_config">$config</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-AuthController.html#property_ldapAuthService">$ldapAuthService</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-AuthController.html#property_logger">$logger</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Controllers-AuthController.html#method___construct">__construct()</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-AuthController.html#method_logout">logout()</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-AuthController.html#method_processLogin">processLogin()</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-AuthController.html#method_showLoginForm">showLoginForm()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="classes/App-Controllers-AuthController.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
537
docs/api/classes/App-Controllers-DashboardController.html
Normal file
537
docs/api/classes/App-Controllers-DashboardController.html
Normal file
@ -0,0 +1,537 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app.html">App</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-controllers.html">Controllers</a></li>
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -class">
|
||||
<h2 class="phpdocumentor-content__title">
|
||||
DashboardController
|
||||
|
||||
|
||||
<div class="phpdocumentor-element__package">
|
||||
in package
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</h2>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/DashboardController.php"><a href="files/app-controllers-dashboardcontroller.html"><abbr title="app/Controllers/DashboardController.php">DashboardController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">15</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Controller für das Dashboard.</p>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Zeigt Serverstatus-Metriken über SNMP an:</p>
|
||||
<ul>
|
||||
<li>Initial Load: Server-seitiger Service-Aufruf (sofortige Daten)</li>
|
||||
<li>Live-Updates: Client-seitiges JavaScript-Polling alle 5s</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="classes/App-Controllers-DashboardController.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-properties">
|
||||
Properties
|
||||
<a href="classes/App-Controllers-DashboardController.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Controllers-DashboardController.html#property_config">$config</a>
|
||||
<span>
|
||||
: array<string|int, mixed> </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Controllers-DashboardController.html#property_snmpService">$snmpService</a>
|
||||
<span>
|
||||
: <a href="classes/App-Services-Snmp-SnmpServerStatusService.html"><abbr title="\App\Services\Snmp\SnmpServerStatusService">SnmpServerStatusService</abbr></a> </span>
|
||||
</dt>
|
||||
|
||||
</dl>
|
||||
|
||||
<h4 id="toc-methods">
|
||||
Methods
|
||||
<a href="classes/App-Controllers-DashboardController.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-DashboardController.html#method___construct">__construct()</a>
|
||||
<span>
|
||||
: mixed </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-DashboardController.html#method_show">show()</a>
|
||||
<span>
|
||||
: array<string|int, mixed> </span>
|
||||
</dt>
|
||||
<dd>Zeigt das Dashboard an.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="phpdocumentor-properties">
|
||||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||||
Properties
|
||||
<a href="classes/App-Controllers-DashboardController.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_config">
|
||||
$config
|
||||
<a href="classes/App-Controllers-DashboardController.html#property_config" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/DashboardController.php"><a href="files/app-controllers-dashboardcontroller.html"><abbr title="app/Controllers/DashboardController.php">DashboardController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">17</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">array<string|int, mixed></span>
|
||||
<span class="phpdocumentor-signature__name">$config</span>
|
||||
</code>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_snmpService">
|
||||
$snmpService
|
||||
<a href="classes/App-Controllers-DashboardController.html#property_snmpService" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/DashboardController.php"><a href="files/app-controllers-dashboardcontroller.html"><abbr title="app/Controllers/DashboardController.php">DashboardController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">18</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type"><a href="classes/App-Services-Snmp-SnmpServerStatusService.html"><abbr title="\App\Services\Snmp\SnmpServerStatusService">SnmpServerStatusService</abbr></a></span>
|
||||
<span class="phpdocumentor-signature__name">$snmpService</span>
|
||||
</code>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-methods">
|
||||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||||
Methods
|
||||
<a href="classes/App-Controllers-DashboardController.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||||
__construct()
|
||||
<a href="classes/App-Controllers-DashboardController.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/DashboardController.php"><a href="files/app-controllers-dashboardcontroller.html"><abbr title="app/Controllers/DashboardController.php">DashboardController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">20</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string|int, mixed> </span><span class="phpdocumentor-signature__argument__name">$config</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$config</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string|int, mixed></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_show">
|
||||
show()
|
||||
<a href="classes/App-Controllers-DashboardController.html#method_show" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/DashboardController.php"><a href="files/app-controllers-dashboardcontroller.html"><abbr title="app/Controllers/DashboardController.php">DashboardController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">33</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Zeigt das Dashboard an.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">show</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string|int, mixed></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
<section class="phpdocumentor-description"><p>Beim initialen Laden wird der Service aufgerufen, um sofort Daten anzuzeigen.
|
||||
Live-Updates erfolgen anschließend via JavaScript-Polling (api/snmp_status.php alle 5s).</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<string|int, mixed></span>
|
||||
</section>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Controllers/DashboardController.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="classes/App-Controllers-DashboardController.html#toc-properties">Properties</a></li>
|
||||
<li><a href="classes/App-Controllers-DashboardController.html#toc-methods">Methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Controllers-DashboardController.html#property_config">$config</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-DashboardController.html#property_snmpService">$snmpService</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Controllers-DashboardController.html#method___construct">__construct()</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-DashboardController.html#method_show">show()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="classes/App-Controllers-DashboardController.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
650
docs/api/classes/App-Controllers-UserManagementController.html
Normal file
650
docs/api/classes/App-Controllers-UserManagementController.html
Normal file
@ -0,0 +1,650 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app.html">App</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-controllers.html">Controllers</a></li>
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -class">
|
||||
<h2 class="phpdocumentor-content__title">
|
||||
UserManagementController
|
||||
|
||||
|
||||
<div class="phpdocumentor-element__package">
|
||||
in package
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</h2>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/UserManagementController.php"><a href="files/app-controllers-usermanagementcontroller.html"><abbr title="app/Controllers/UserManagementController.php">UserManagementController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">26</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Controller für die Benutzer- und Gruppenanzeige.</p>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Aufgaben:</p>
|
||||
<ul>
|
||||
<li>holt über den LdapDirectoryService die Listen von Benutzern und Gruppen</li>
|
||||
<li>behandelt technische Fehler und bereitet eine Fehlermeldung für die View auf</li>
|
||||
<li>gibt die Daten an eine View-Datei (public/views/users.php) weiter</li>
|
||||
</ul>
|
||||
<p>WICHTIG:</p>
|
||||
<ul>
|
||||
<li>Es werden aktuell nur Daten angezeigt (Read-only).</li>
|
||||
<li>Es findet keine Änderung im Active Directory statt.</li>
|
||||
</ul>
|
||||
<p>NEU:</p>
|
||||
<ul>
|
||||
<li>Gibt ein View-Result-Array zurück, das von index.php + Layout gerendert wird.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="classes/App-Controllers-UserManagementController.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-properties">
|
||||
Properties
|
||||
<a href="classes/App-Controllers-UserManagementController.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Controllers-UserManagementController.html#property_config">$config</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Controllers-UserManagementController.html#property_directoryService">$directoryService</a>
|
||||
<span>
|
||||
: <a href="classes/App-Services-Ldap-LdapDirectoryService.html"><abbr title="\App\Services\Ldap\LdapDirectoryService">LdapDirectoryService</abbr></a> </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Controllers-UserManagementController.html#property_logger">$logger</a>
|
||||
<span>
|
||||
: <a href="classes/App-Services-Logging-LoggingService.html"><abbr title="\App\Services\Logging\LoggingService">LoggingService</abbr></a> </span>
|
||||
</dt>
|
||||
|
||||
</dl>
|
||||
|
||||
<h4 id="toc-methods">
|
||||
Methods
|
||||
<a href="classes/App-Controllers-UserManagementController.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-UserManagementController.html#method___construct">__construct()</a>
|
||||
<span>
|
||||
: mixed </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-UserManagementController.html#method_create">create()</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
<dd>Zeigt die Seite zum Erstellen von Benutzern (Einzel/CSV).</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Controllers-UserManagementController.html#method_show">show()</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
<dd>Zeigt Benutzer- und Gruppenliste an.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="phpdocumentor-properties">
|
||||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||||
Properties
|
||||
<a href="classes/App-Controllers-UserManagementController.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_config">
|
||||
$config
|
||||
<a href="classes/App-Controllers-UserManagementController.html#property_config" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/UserManagementController.php"><a href="files/app-controllers-usermanagementcontroller.html"><abbr title="app/Controllers/UserManagementController.php">UserManagementController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">29</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">array<string, mixed></span>
|
||||
<span class="phpdocumentor-signature__name">$config</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Vollständige Anwendungskonfiguration (aus config.php)</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_directoryService">
|
||||
$directoryService
|
||||
<a href="classes/App-Controllers-UserManagementController.html#property_directoryService" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/UserManagementController.php"><a href="files/app-controllers-usermanagementcontroller.html"><abbr title="app/Controllers/UserManagementController.php">UserManagementController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">32</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type"><a href="classes/App-Services-Ldap-LdapDirectoryService.html"><abbr title="\App\Services\Ldap\LdapDirectoryService">LdapDirectoryService</abbr></a></span>
|
||||
<span class="phpdocumentor-signature__name">$directoryService</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Service für das Lesen von Benutzern und Gruppen aus dem LDAP/AD</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_logger">
|
||||
$logger
|
||||
<a href="classes/App-Controllers-UserManagementController.html#property_logger" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/UserManagementController.php"><a href="files/app-controllers-usermanagementcontroller.html"><abbr title="app/Controllers/UserManagementController.php">UserManagementController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">35</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type"><a href="classes/App-Services-Logging-LoggingService.html"><abbr title="\App\Services\Logging\LoggingService">LoggingService</abbr></a></span>
|
||||
<span class="phpdocumentor-signature__name">$logger</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Logger für technische Fehler</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-methods">
|
||||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||||
Methods
|
||||
<a href="classes/App-Controllers-UserManagementController.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||||
__construct()
|
||||
<a href="classes/App-Controllers-UserManagementController.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/UserManagementController.php"><a href="files/app-controllers-usermanagementcontroller.html"><abbr title="app/Controllers/UserManagementController.php">UserManagementController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">40</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$config</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$config</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Vollständige Konfiguration aus config.php</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_create">
|
||||
create()
|
||||
<a href="classes/App-Controllers-UserManagementController.html#method_create" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/UserManagementController.php"><a href="files/app-controllers-usermanagementcontroller.html"><abbr title="app/Controllers/UserManagementController.php">UserManagementController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">109</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Zeigt die Seite zum Erstellen von Benutzern (Einzel/CSV).</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">create</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string, mixed></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<string, mixed></span>
|
||||
</section>
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_show">
|
||||
show()
|
||||
<a href="classes/App-Controllers-UserManagementController.html#method_show" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Controllers/UserManagementController.php"><a href="files/app-controllers-usermanagementcontroller.html"><abbr title="app/Controllers/UserManagementController.php">UserManagementController.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">61</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Zeigt Benutzer- und Gruppenliste an.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">show</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string, mixed></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
<section class="phpdocumentor-description"><p>Wird typischerweise über die Route "users" (index.php?route=users) aufgerufen.</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<string, mixed></span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>View-Result für das zentrale Layout</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Controllers/UserManagementController.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="classes/App-Controllers-UserManagementController.html#toc-properties">Properties</a></li>
|
||||
<li><a href="classes/App-Controllers-UserManagementController.html#toc-methods">Methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Controllers-UserManagementController.html#property_config">$config</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-UserManagementController.html#property_directoryService">$directoryService</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-UserManagementController.html#property_logger">$logger</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Controllers-UserManagementController.html#method___construct">__construct()</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-UserManagementController.html#method_create">create()</a></li>
|
||||
<li class=""><a href="classes/App-Controllers-UserManagementController.html#method_show">show()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="classes/App-Controllers-UserManagementController.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
584
docs/api/classes/App-Services-Ldap-LdapAuthService.html
Normal file
584
docs/api/classes/App-Services-Ldap-LdapAuthService.html
Normal file
@ -0,0 +1,584 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app.html">App</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services.html">Services</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services-ldap.html">Ldap</a></li>
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -class">
|
||||
<h2 class="phpdocumentor-content__title">
|
||||
LdapAuthService
|
||||
|
||||
|
||||
<div class="phpdocumentor-element__package">
|
||||
in package
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</h2>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapAuthService.php"><a href="files/app-services-ldap-ldapauthservice.html"><abbr title="app/Services/Ldap/LdapAuthService.php">LdapAuthService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">17</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Service zur Authentifizierung von Benutzern gegen ein Active Directory per LDAP/LDAPS.</p>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Bekommt Benutzername und Passwort und liefert:</p>
|
||||
<ul>
|
||||
<li>true -> Anmeldedaten sind gültig</li>
|
||||
<li>false -> Anmeldedaten sind fachlich ungültig (z. B. falsches Passwort)
|
||||
Technische Fehler (z. B. falsche Konfiguration, keine Verbindung) werden als Exception geworfen.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapAuthService.html#property_config">$config</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapAuthService.html#property_connectionHelper">$connectionHelper</a>
|
||||
<span>
|
||||
: <a href="classes/App-Services-Ldap-LdapConnectionHelper.html"><abbr title="\App\Services\Ldap\LdapConnectionHelper">LdapConnectionHelper</abbr></a> </span>
|
||||
</dt>
|
||||
|
||||
</dl>
|
||||
|
||||
<h4 id="toc-methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapAuthService.html#method___construct">__construct()</a>
|
||||
<span>
|
||||
: mixed </span>
|
||||
</dt>
|
||||
<dd>Erwartet den Teilbereich "ldap" aus der allgemeinen Konfiguration (config.php).</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapAuthService.html#method_authenticate">authenticate()</a>
|
||||
<span>
|
||||
: bool </span>
|
||||
</dt>
|
||||
<dd>Führt die eigentliche LDAP/AD-Authentifizierung durch.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="phpdocumentor-properties">
|
||||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_config">
|
||||
$config
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#property_config" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapAuthService.php"><a href="files/app-services-ldap-ldapauthservice.html"><abbr title="app/Services/Ldap/LdapAuthService.php">LdapAuthService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">20</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">array<string, mixed></span>
|
||||
<span class="phpdocumentor-signature__name">$config</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>LDAP-spezifische Konfiguration (Server, Port, Domain-Suffix, Timeout, etc.)</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_connectionHelper">
|
||||
$connectionHelper
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#property_connectionHelper" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapAuthService.php"><a href="files/app-services-ldap-ldapauthservice.html"><abbr title="app/Services/Ldap/LdapAuthService.php">LdapAuthService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">22</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type"><a href="classes/App-Services-Ldap-LdapConnectionHelper.html"><abbr title="\App\Services\Ldap\LdapConnectionHelper">LdapConnectionHelper</abbr></a></span>
|
||||
<span class="phpdocumentor-signature__name">$connectionHelper</span>
|
||||
</code>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-methods">
|
||||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||||
__construct()
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapAuthService.php"><a href="files/app-services-ldap-ldapauthservice.html"><abbr title="app/Services/Ldap/LdapAuthService.php">LdapAuthService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">29</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Erwartet den Teilbereich "ldap" aus der allgemeinen Konfiguration (config.php).</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$ldapConfig</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$ldapConfig</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Konfiguration für die LDAP-Verbindung</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_authenticate">
|
||||
authenticate()
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#method_authenticate" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapAuthService.php"><a href="files/app-services-ldap-ldapauthservice.html"><abbr title="app/Services/Ldap/LdapAuthService.php">LdapAuthService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">46</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Führt die eigentliche LDAP/AD-Authentifizierung durch.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">authenticate</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$username</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$password</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$username</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Benutzername (ohne Domain-Suffix, z. B. "administrator")</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$password</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Passwort im Klartext (wird direkt an ldap_bind übergeben)</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-tag-list__heading" id="tags">
|
||||
Tags
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#method_authenticate#tags" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h5>
|
||||
<dl class="phpdocumentor-tag-list">
|
||||
<dt class="phpdocumentor-tag-list__entry">
|
||||
<span class="phpdocumentor-tag__name">throws</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-tag-list__definition">
|
||||
<span class="phpdocumentor-tag-link"><abbr title="\RuntimeException">RuntimeException</abbr></span>
|
||||
|
||||
<section class="phpdocumentor-description"><p>bei technischen Problemen (z. B. fehlende Konfiguration, Verbindungsfehler)</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">bool</span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>true bei erfolgreicher Anmeldung, false bei fachlich ungültigen Anmeldedaten</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Services/Ldap/LdapAuthService.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="classes/App-Services-Ldap-LdapAuthService.html#toc-properties">Properties</a></li>
|
||||
<li><a href="classes/App-Services-Ldap-LdapAuthService.html#toc-methods">Methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapAuthService.html#property_config">$config</a></li>
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapAuthService.html#property_connectionHelper">$connectionHelper</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapAuthService.html#method___construct">__construct()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapAuthService.html#method_authenticate">authenticate()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="classes/App-Services-Ldap-LdapAuthService.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
524
docs/api/classes/App-Services-Ldap-LdapConnectionHelper.html
Normal file
524
docs/api/classes/App-Services-Ldap-LdapConnectionHelper.html
Normal file
@ -0,0 +1,524 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app.html">App</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services.html">Services</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services-ldap.html">Ldap</a></li>
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -class">
|
||||
<h2 class="phpdocumentor-content__title">
|
||||
LdapConnectionHelper
|
||||
|
||||
|
||||
<div class="phpdocumentor-element__package">
|
||||
in package
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</h2>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapConnectionHelper.php"><a href="files/app-services-ldap-ldapconnectionhelper.html"><abbr title="app/Services/Ldap/LdapConnectionHelper.php">LdapConnectionHelper.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">23</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Hilfsklasse zum Aufbau einer LDAP/LDAPS-Verbindung.</p>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Aufgaben:</p>
|
||||
<ul>
|
||||
<li>liest Server, Port und Timeout aus der LDAP-Konfiguration</li>
|
||||
<li>erstellt eine LDAP-Verbindung</li>
|
||||
<li>setzt die notwendigen Optionen (Protokollversion, Netzwerk-Timeout)</li>
|
||||
</ul>
|
||||
<p>Wichtig:</p>
|
||||
<ul>
|
||||
<li>Diese Klasse führt KEIN ldap_bind durch.</li>
|
||||
<li>Das Bind (mit Benutzer- oder Service-Konto) erfolgt in den Fach-Services
|
||||
wie LdapAuthService oder LdapDirectoryService.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapConnectionHelper.html#property_config">$config</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
|
||||
</dl>
|
||||
|
||||
<h4 id="toc-methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapConnectionHelper.html#method___construct">__construct()</a>
|
||||
<span>
|
||||
: mixed </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapConnectionHelper.html#method_createConnection">createConnection()</a>
|
||||
<span>
|
||||
: resource </span>
|
||||
</dt>
|
||||
<dd>Erstellt eine LDAP-Verbindung mit gesetzten Optionen (Protokollversion, Timeout),
|
||||
aber ohne Bind. Den Bind führen die aufrufenden Services durch.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="phpdocumentor-properties">
|
||||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_config">
|
||||
$config
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#property_config" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapConnectionHelper.php"><a href="files/app-services-ldap-ldapconnectionhelper.html"><abbr title="app/Services/Ldap/LdapConnectionHelper.php">LdapConnectionHelper.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">26</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">array<string, mixed></span>
|
||||
<span class="phpdocumentor-signature__name">$config</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>LDAP-spezifische Konfiguration (server, port, timeout, etc.)</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-methods">
|
||||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||||
__construct()
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapConnectionHelper.php"><a href="files/app-services-ldap-ldapconnectionhelper.html"><abbr title="app/Services/Ldap/LdapConnectionHelper.php">LdapConnectionHelper.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">31</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$ldapConfig</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$ldapConfig</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Teilbereich "ldap" aus der config.php</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_createConnection">
|
||||
createConnection()
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#method_createConnection" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapConnectionHelper.php"><a href="files/app-services-ldap-ldapconnectionhelper.html"><abbr title="app/Services/Ldap/LdapConnectionHelper.php">LdapConnectionHelper.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">46</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Erstellt eine LDAP-Verbindung mit gesetzten Optionen (Protokollversion, Timeout),
|
||||
aber ohne Bind. Den Bind führen die aufrufenden Services durch.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">createConnection</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">resource</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-tag-list__heading" id="tags">
|
||||
Tags
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#method_createConnection#tags" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h5>
|
||||
<dl class="phpdocumentor-tag-list">
|
||||
<dt class="phpdocumentor-tag-list__entry">
|
||||
<span class="phpdocumentor-tag__name">throws</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-tag-list__definition">
|
||||
<span class="phpdocumentor-tag-link"><abbr title="\RuntimeException">RuntimeException</abbr></span>
|
||||
|
||||
<section class="phpdocumentor-description"><p>wenn der Server nicht konfiguriert ist oder die Verbindung scheitert</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">resource</span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>LDAP-Verbindungs-Handle</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Services/Ldap/LdapConnectionHelper.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="classes/App-Services-Ldap-LdapConnectionHelper.html#toc-properties">Properties</a></li>
|
||||
<li><a href="classes/App-Services-Ldap-LdapConnectionHelper.html#toc-methods">Methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapConnectionHelper.html#property_config">$config</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapConnectionHelper.html#method___construct">__construct()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapConnectionHelper.html#method_createConnection">createConnection()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="classes/App-Services-Ldap-LdapConnectionHelper.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
711
docs/api/classes/App-Services-Ldap-LdapDirectoryService.html
Normal file
711
docs/api/classes/App-Services-Ldap-LdapDirectoryService.html
Normal file
@ -0,0 +1,711 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app.html">App</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services.html">Services</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services-ldap.html">Ldap</a></li>
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -class">
|
||||
<h2 class="phpdocumentor-content__title">
|
||||
LdapDirectoryService
|
||||
|
||||
|
||||
<div class="phpdocumentor-element__package">
|
||||
in package
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</h2>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapDirectoryService.php"><a href="files/app-services-ldap-ldapdirectoryservice.html"><abbr title="app/Services/Ldap/LdapDirectoryService.php">LdapDirectoryService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">21</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Service zum Lesen von Objekten aus dem Active Directory.</p>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Aktueller Umfang:</p>
|
||||
<ul>
|
||||
<li>Liste von Benutzern (sAMAccountName, displayName, mail)</li>
|
||||
<li>Liste von Gruppen (sAMAccountName, cn, description)</li>
|
||||
</ul>
|
||||
<p>Technische Details:</p>
|
||||
<ul>
|
||||
<li>Verwendet ein technisches Konto (bind_dn + bind_password) für Lesezugriffe</li>
|
||||
<li>Nutzt LdapConnectionHelper zum Aufbau der Verbindung</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapDirectoryService.html#property_config">$config</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapDirectoryService.html#property_connectionHelper">$connectionHelper</a>
|
||||
<span>
|
||||
: <a href="classes/App-Services-Ldap-LdapConnectionHelper.html"><abbr title="\App\Services\Ldap\LdapConnectionHelper">LdapConnectionHelper</abbr></a> </span>
|
||||
</dt>
|
||||
|
||||
</dl>
|
||||
|
||||
<h4 id="toc-methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapDirectoryService.html#method___construct">__construct()</a>
|
||||
<span>
|
||||
: mixed </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapDirectoryService.html#method_getGroups">getGroups()</a>
|
||||
<span>
|
||||
: array<int, array<string, string>> </span>
|
||||
</dt>
|
||||
<dd>Liefert eine Liste von Gruppen aus dem AD.</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapDirectoryService.html#method_getUsers">getUsers()</a>
|
||||
<span>
|
||||
: array<int, array<string, string>> </span>
|
||||
</dt>
|
||||
<dd>Liefert eine Liste von Benutzern aus dem AD.</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -private">
|
||||
<a class="" href="classes/App-Services-Ldap-LdapDirectoryService.html#method_connect">connect()</a>
|
||||
<span>
|
||||
: resource </span>
|
||||
</dt>
|
||||
<dd>Stellt eine LDAP-Verbindung her und bindet sich mit dem technischen Konto.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="phpdocumentor-properties">
|
||||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_config">
|
||||
$config
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#property_config" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapDirectoryService.php"><a href="files/app-services-ldap-ldapdirectoryservice.html"><abbr title="app/Services/Ldap/LdapDirectoryService.php">LdapDirectoryService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">24</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">array<string, mixed></span>
|
||||
<span class="phpdocumentor-signature__name">$config</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>LDAP-Konfiguration (inkl. base_dn, bind_dn, bind_password)</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_connectionHelper">
|
||||
$connectionHelper
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#property_connectionHelper" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapDirectoryService.php"><a href="files/app-services-ldap-ldapdirectoryservice.html"><abbr title="app/Services/Ldap/LdapDirectoryService.php">LdapDirectoryService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">27</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type"><a href="classes/App-Services-Ldap-LdapConnectionHelper.html"><abbr title="\App\Services\Ldap\LdapConnectionHelper">LdapConnectionHelper</abbr></a></span>
|
||||
<span class="phpdocumentor-signature__name">$connectionHelper</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Zentrale Hilfsklasse für den Aufbau von LDAP-Verbindungen</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-methods">
|
||||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||||
__construct()
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapDirectoryService.php"><a href="files/app-services-ldap-ldapdirectoryservice.html"><abbr title="app/Services/Ldap/LdapDirectoryService.php">LdapDirectoryService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">32</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$ldapConfig</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$ldapConfig</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Teilbereich "ldap" aus der config.php</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_getGroups">
|
||||
getGroups()
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_getGroups" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapDirectoryService.php"><a href="files/app-services-ldap-ldapdirectoryservice.html"><abbr title="app/Services/Ldap/LdapDirectoryService.php">LdapDirectoryService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">153</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Liefert eine Liste von Gruppen aus dem AD.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">getGroups</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<int, array<string, string>></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-tag-list__heading" id="tags">
|
||||
Tags
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_getGroups#tags" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h5>
|
||||
<dl class="phpdocumentor-tag-list">
|
||||
<dt class="phpdocumentor-tag-list__entry">
|
||||
<span class="phpdocumentor-tag__name">throws</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-tag-list__definition">
|
||||
<span class="phpdocumentor-tag-link"><abbr title="\RuntimeException">RuntimeException</abbr></span>
|
||||
|
||||
<section class="phpdocumentor-description"><p>bei Konfigurations- oder Verbindungsproblemen</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<int, array<string, string>></span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>Liste von Gruppen-Datensätzen</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_getUsers">
|
||||
getUsers()
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_getUsers" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapDirectoryService.php"><a href="files/app-services-ldap-ldapdirectoryservice.html"><abbr title="app/Services/Ldap/LdapDirectoryService.php">LdapDirectoryService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">90</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Liefert eine Liste von Benutzern aus dem AD.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">getUsers</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<int, array<string, string>></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-tag-list__heading" id="tags">
|
||||
Tags
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_getUsers#tags" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h5>
|
||||
<dl class="phpdocumentor-tag-list">
|
||||
<dt class="phpdocumentor-tag-list__entry">
|
||||
<span class="phpdocumentor-tag__name">throws</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-tag-list__definition">
|
||||
<span class="phpdocumentor-tag-link"><abbr title="\RuntimeException">RuntimeException</abbr></span>
|
||||
|
||||
<section class="phpdocumentor-description"><p>bei Konfigurations- oder Verbindungsproblemen</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<int, array<string, string>></span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>Liste von Benutzer-Datensätzen
|
||||
[
|
||||
[
|
||||
'samaccountname' => 'user1',
|
||||
'displayname' => 'User Eins',
|
||||
'mail' => 'user1@example.local',
|
||||
],
|
||||
...
|
||||
]</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_connect">
|
||||
connect()
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_connect" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Ldap/LdapDirectoryService.php"><a href="files/app-services-ldap-ldapdirectoryservice.html"><abbr title="app/Services/Ldap/LdapDirectoryService.php">LdapDirectoryService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">49</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Stellt eine LDAP-Verbindung her und bindet sich mit dem technischen Konto.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__name">connect</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">resource</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-tag-list__heading" id="tags">
|
||||
Tags
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_connect#tags" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h5>
|
||||
<dl class="phpdocumentor-tag-list">
|
||||
<dt class="phpdocumentor-tag-list__entry">
|
||||
<span class="phpdocumentor-tag__name">throws</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-tag-list__definition">
|
||||
<span class="phpdocumentor-tag-link"><abbr title="\RuntimeException">RuntimeException</abbr></span>
|
||||
|
||||
<section class="phpdocumentor-description"><p>wenn Bind-Daten fehlen oder der Bind fehlschlägt</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">resource</span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>LDAP-Verbindungs-Handle</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Services/Ldap/LdapDirectoryService.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="classes/App-Services-Ldap-LdapDirectoryService.html#toc-properties">Properties</a></li>
|
||||
<li><a href="classes/App-Services-Ldap-LdapDirectoryService.html#toc-methods">Methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapDirectoryService.html#property_config">$config</a></li>
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapDirectoryService.html#property_connectionHelper">$connectionHelper</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapDirectoryService.html#method___construct">__construct()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_getGroups">getGroups()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_getUsers">getUsers()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Ldap-LdapDirectoryService.html#method_connect">connect()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="classes/App-Services-Ldap-LdapDirectoryService.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
790
docs/api/classes/App-Services-Logging-LoggingService.html
Normal file
790
docs/api/classes/App-Services-Logging-LoggingService.html
Normal file
@ -0,0 +1,790 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app.html">App</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services.html">Services</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services-logging.html">Logging</a></li>
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -class">
|
||||
<h2 class="phpdocumentor-content__title">
|
||||
LoggingService
|
||||
|
||||
|
||||
<div class="phpdocumentor-element__package">
|
||||
in package
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</h2>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">17</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Einfacher File-Logger für die AdminTool-Anwendung.</p>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Ziele:</p>
|
||||
<ul>
|
||||
<li>Technische Details werden in eine Log-Datei unter public/logs/ geschrieben.</li>
|
||||
<li>In der Weboberfläche erscheinen nur verständliche, fachliche Fehlermeldungen.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-constants">
|
||||
Constants
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#toc-constants" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -constant -private">
|
||||
<a class="" href="classes/App-Services-Logging-LoggingService.html#constant_LEVEL_MAP">LEVEL_MAP</a>
|
||||
<span>
|
||||
= ['debug' => 100, 'info' => 200, 'warning' => 300, 'error' => 400] </span>
|
||||
</dt>
|
||||
<dd>Zuordnung der Log-Level zu numerischen Werten zur Filterung.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
<h4 id="toc-properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Logging-LoggingService.html#property_logDir">$logDir</a>
|
||||
<span>
|
||||
: string </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Logging-LoggingService.html#property_logFile">$logFile</a>
|
||||
<span>
|
||||
: string </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Logging-LoggingService.html#property_minLevel">$minLevel</a>
|
||||
<span>
|
||||
: int </span>
|
||||
</dt>
|
||||
|
||||
</dl>
|
||||
|
||||
<h4 id="toc-methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Logging-LoggingService.html#method___construct">__construct()</a>
|
||||
<span>
|
||||
: mixed </span>
|
||||
</dt>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Logging-LoggingService.html#method_log">log()</a>
|
||||
<span>
|
||||
: void </span>
|
||||
</dt>
|
||||
<dd>Allgemeiner Log-Eintrag.</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Logging-LoggingService.html#method_logException">logException()</a>
|
||||
<span>
|
||||
: void </span>
|
||||
</dt>
|
||||
<dd>Komfortmethode, um Exceptions strukturiert zu loggen.</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -private">
|
||||
<a class="" href="classes/App-Services-Logging-LoggingService.html#method_ensureLogDirectoryExists">ensureLogDirectoryExists()</a>
|
||||
<span>
|
||||
: void </span>
|
||||
</dt>
|
||||
<dd>Stellt sicher, dass das Log-Verzeichnis existiert.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="phpdocumentor-constants">
|
||||
<h3 class="phpdocumentor-elements__header" id="constants">
|
||||
Constants
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#constants" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article class="phpdocumentor-element -constant -private ">
|
||||
<h4 class="phpdocumentor-element__name" id="constant_LEVEL_MAP">
|
||||
LEVEL_MAP
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#constant_LEVEL_MAP" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">33</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Zuordnung der Log-Level zu numerischen Werten zur Filterung.</p>
|
||||
|
||||
|
||||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">array<string, int></span>
|
||||
<span class="phpdocumentor-signature__name">LEVEL_MAP</span>
|
||||
= <span class="phpdocumentor-signature__default-value">['debug' => 100, 'info' => 200, 'warning' => 300, 'error' => 400]</span>
|
||||
</code>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
|
||||
<section class="phpdocumentor-properties">
|
||||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_logDir">
|
||||
$logDir
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#property_logDir" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">20</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">string</span>
|
||||
<span class="phpdocumentor-signature__name">$logDir</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Vollständiger Pfad zum Log-Verzeichnis</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_logFile">
|
||||
$logFile
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#property_logFile" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">23</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">string</span>
|
||||
<span class="phpdocumentor-signature__name">$logFile</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Dateiname der Log-Datei</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_minLevel">
|
||||
$minLevel
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#property_minLevel" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">26</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">int</span>
|
||||
<span class="phpdocumentor-signature__name">$minLevel</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Minimale Log-Stufe, ab der geschrieben wird.</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-methods">
|
||||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||||
__construct()
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">43</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$config</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$config</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Teilkonfiguration "logging" aus config.php</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_log">
|
||||
log()
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#method_log" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">79</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Allgemeiner Log-Eintrag.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">log</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$level</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$message</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$context</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">[]</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">void</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$level</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Log-Level (debug|info|warning|error)</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$message</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Nachrichtentext</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$context</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
= <span class="phpdocumentor-signature__argument__default-value">[]</span> </dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Zusätzliche Kontextinformationen</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_logException">
|
||||
logException()
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#method_logException" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">119</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Komfortmethode, um Exceptions strukturiert zu loggen.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">logException</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$message</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Throwable">Throwable</abbr> </span><span class="phpdocumentor-signature__argument__name">$exception</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$context</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">[]</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">void</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$message</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Kurzer Kontexttext zur Exception</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$exception</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Throwable">Throwable</abbr></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Die geworfene Exception</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$context</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
= <span class="phpdocumentor-signature__argument__default-value">[]</span> </dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Zusätzlicher Kontext (Route, Benutzername, Remote-IP, ...)</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_ensureLogDirectoryExists">
|
||||
ensureLogDirectoryExists()
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#method_ensureLogDirectoryExists" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Logging/LoggingService.php"><a href="files/app-services-logging-loggingservice.html"><abbr title="app/Services/Logging/LoggingService.php">LoggingService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">60</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Stellt sicher, dass das Log-Verzeichnis existiert.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__name">ensureLogDirectoryExists</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">void</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Services/Logging/LoggingService.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="classes/App-Services-Logging-LoggingService.html#toc-constants">Constants</a></li>
|
||||
<li><a href="classes/App-Services-Logging-LoggingService.html#toc-properties">Properties</a></li>
|
||||
<li><a href="classes/App-Services-Logging-LoggingService.html#toc-methods">Methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="phpdocumentor-on-this-page-section__title">Constants</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Logging-LoggingService.html#constant_LEVEL_MAP">LEVEL_MAP</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Logging-LoggingService.html#property_logDir">$logDir</a></li>
|
||||
<li class=""><a href="classes/App-Services-Logging-LoggingService.html#property_logFile">$logFile</a></li>
|
||||
<li class=""><a href="classes/App-Services-Logging-LoggingService.html#property_minLevel">$minLevel</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Logging-LoggingService.html#method___construct">__construct()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Logging-LoggingService.html#method_log">log()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Logging-LoggingService.html#method_logException">logException()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Logging-LoggingService.html#method_ensureLogDirectoryExists">ensureLogDirectoryExists()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="classes/App-Services-Logging-LoggingService.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
521
docs/api/classes/App-Services-Snmp-SnmpServerStatusService.html
Normal file
521
docs/api/classes/App-Services-Snmp-SnmpServerStatusService.html
Normal file
@ -0,0 +1,521 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app.html">App</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services.html">Services</a></li>
|
||||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/app-services-snmp.html">Snmp</a></li>
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -class">
|
||||
<h2 class="phpdocumentor-content__title">
|
||||
SnmpServerStatusService
|
||||
|
||||
|
||||
<div class="phpdocumentor-element__package">
|
||||
in package
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</h2>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Snmp/SnmpServerStatusService.php"><a href="files/app-services-snmp-snmpserverstatusservice.html"><abbr title="app/Services/Snmp/SnmpServerStatusService.php">SnmpServerStatusService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">21</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Service zur Ermittlung des Serverstatus per SNMP.</p>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>Features:</p>
|
||||
<ul>
|
||||
<li>Robuste Fehlerbehandlung mit aussagekräftigen Exceptions</li>
|
||||
<li>Intelligente Fallback-Logik bei fehlenden oder unerwarteten OID-Beschreibungen</li>
|
||||
<li>Unterstützung für Windows (C:) und Linux (/) Systeme</li>
|
||||
<li>Detailliertes Logging über Exceptions</li>
|
||||
</ul>
|
||||
<p>Wird vom DashboardController beim initialen Laden aufgerufen.
|
||||
Das Live-Polling erfolgt über das API-Endpunkt (public/api/snmp_status.php).</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -property -private">
|
||||
<a class="" href="classes/App-Services-Snmp-SnmpServerStatusService.html#property_config">$config</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
|
||||
</dl>
|
||||
|
||||
<h4 id="toc-methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Snmp-SnmpServerStatusService.html#method___construct">__construct()</a>
|
||||
<span>
|
||||
: mixed </span>
|
||||
</dt>
|
||||
<dd>Erwartet den Teilbereich "snmp" aus der allgemeinen Konfiguration (config.php).</dd>
|
||||
|
||||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||||
<a class="" href="classes/App-Services-Snmp-SnmpServerStatusService.html#method_getServerStatus">getServerStatus()</a>
|
||||
<span>
|
||||
: array<string, mixed> </span>
|
||||
</dt>
|
||||
<dd>Liefert den aktuellen Serverstatus zurück.</dd>
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="phpdocumentor-properties">
|
||||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||||
Properties
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="
|
||||
phpdocumentor-element
|
||||
-property
|
||||
-private
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="property_config">
|
||||
$config
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#property_config" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
<span class="phpdocumentor-element__modifiers">
|
||||
</span>
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Snmp/SnmpServerStatusService.php"><a href="files/app-services-snmp-snmpserverstatusservice.html"><abbr title="app/Services/Snmp/SnmpServerStatusService.php">SnmpServerStatusService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">24</span>
|
||||
|
||||
</aside>
|
||||
|
||||
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">private</span>
|
||||
<span class="phpdocumentor-signature__type">array<string, mixed></span>
|
||||
<span class="phpdocumentor-signature__name">$config</span>
|
||||
</code>
|
||||
|
||||
|
||||
<section class="phpdocumentor-description"><p>SNMP-Konfiguration (Host, Community, Timeout, OIDs, etc.)</p>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-methods">
|
||||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||||
Methods
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||||
__construct()
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Snmp/SnmpServerStatusService.php"><a href="files/app-services-snmp-snmpserverstatusservice.html"><abbr title="app/Services/Snmp/SnmpServerStatusService.php">SnmpServerStatusService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">31</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Erwartet den Teilbereich "snmp" aus der allgemeinen Konfiguration (config.php).</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string, mixed> </span><span class="phpdocumentor-signature__argument__name">$snmpConfig</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||||
<dl class="phpdocumentor-argument-list">
|
||||
<dt class="phpdocumentor-argument-list__entry">
|
||||
<span class="phpdocumentor-signature__argument__name">$snmpConfig</span>
|
||||
: <span class="phpdocumentor-signature__argument__return-type">array<string, mixed></span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-argument-list__definition">
|
||||
<section class="phpdocumentor-description"><p>Konfiguration für die SNMP-Abfragen</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
<article
|
||||
class="phpdocumentor-element
|
||||
-method
|
||||
-public
|
||||
"
|
||||
>
|
||||
<h4 class="phpdocumentor-element__name" id="method_getServerStatus">
|
||||
getServerStatus()
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#method_getServerStatus" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<aside class="phpdocumentor-element-found-in">
|
||||
<abbr class="phpdocumentor-element-found-in__file" title="app/Services/Snmp/SnmpServerStatusService.php"><a href="files/app-services-snmp-snmpserverstatusservice.html"><abbr title="app/Services/Snmp/SnmpServerStatusService.php">SnmpServerStatusService.php</abbr></a></abbr>
|
||||
:
|
||||
<span class="phpdocumentor-element-found-in__line">43</span>
|
||||
|
||||
</aside>
|
||||
|
||||
<p class="phpdocumentor-summary">Liefert den aktuellen Serverstatus zurück.</p>
|
||||
|
||||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||||
<span class="phpdocumentor-signature__visibility">public</span>
|
||||
<span class="phpdocumentor-signature__name">getServerStatus</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string, mixed></span></code>
|
||||
|
||||
<div class="phpdocumentor-label-line">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="phpdocumentor-tag-list__heading" id="tags">
|
||||
Tags
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#method_getServerStatus#tags" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h5>
|
||||
<dl class="phpdocumentor-tag-list">
|
||||
<dt class="phpdocumentor-tag-list__entry">
|
||||
<span class="phpdocumentor-tag__name">throws</span>
|
||||
</dt>
|
||||
<dd class="phpdocumentor-tag-list__definition">
|
||||
<span class="phpdocumentor-tag-link"><abbr title="\RuntimeException">RuntimeException</abbr></span>
|
||||
|
||||
<section class="phpdocumentor-description"><p>wenn die SNMP-Konfiguration unvollständig ist oder Abfragen fehlschlagen</p>
|
||||
</section>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||||
<span class="phpdocumentor-signature__response_type">array<string, mixed></span>
|
||||
—
|
||||
<section class="phpdocumentor-description"><p>Assoziatives Array mit Statuswerten (Hostname, CPU%, RAM%, etc.)</p>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Services/Snmp/SnmpServerStatusService.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="classes/App-Services-Snmp-SnmpServerStatusService.html#toc-properties">Properties</a></li>
|
||||
<li><a href="classes/App-Services-Snmp-SnmpServerStatusService.html#toc-methods">Methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Snmp-SnmpServerStatusService.html#property_config">$config</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class=""><a href="classes/App-Services-Snmp-SnmpServerStatusService.html#method___construct">__construct()</a></li>
|
||||
<li class=""><a href="classes/App-Services-Snmp-SnmpServerStatusService.html#method_getServerStatus">getServerStatus()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="classes/App-Services-Snmp-SnmpServerStatusService.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
1236
docs/api/css/base.css
Normal file
1236
docs/api/css/base.css
Normal file
File diff suppressed because it is too large
Load Diff
427
docs/api/css/normalize.css
vendored
Normal file
427
docs/api/css/normalize.css
vendored
Normal file
@ -0,0 +1,427 @@
|
||||
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
|
||||
|
||||
/**
|
||||
* 1. Set default font family to sans-serif.
|
||||
* 2. Prevent iOS text size adjust after orientation change, without disabling
|
||||
* user zoom.
|
||||
*/
|
||||
|
||||
html {
|
||||
font-family: sans-serif; /* 1 */
|
||||
-ms-text-size-adjust: 100%; /* 2 */
|
||||
-webkit-text-size-adjust: 100%; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove default margin.
|
||||
*/
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* HTML5 display definitions
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Correct `block` display not defined for any HTML5 element in IE 8/9.
|
||||
* Correct `block` display not defined for `details` or `summary` in IE 10/11
|
||||
* and Firefox.
|
||||
* Correct `block` display not defined for `main` in IE 11.
|
||||
*/
|
||||
|
||||
article,
|
||||
aside,
|
||||
details,
|
||||
figcaption,
|
||||
figure,
|
||||
footer,
|
||||
header,
|
||||
hgroup,
|
||||
main,
|
||||
menu,
|
||||
nav,
|
||||
section,
|
||||
summary {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct `inline-block` display not defined in IE 8/9.
|
||||
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
|
||||
*/
|
||||
|
||||
audio,
|
||||
canvas,
|
||||
progress,
|
||||
video {
|
||||
display: inline-block; /* 1 */
|
||||
vertical-align: baseline; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent modern browsers from displaying `audio` without controls.
|
||||
* Remove excess height in iOS 5 devices.
|
||||
*/
|
||||
|
||||
audio:not([controls]) {
|
||||
display: none;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address `[hidden]` styling not present in IE 8/9/10.
|
||||
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
|
||||
*/
|
||||
|
||||
[hidden],
|
||||
template {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/* Links
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the gray background color from active links in IE 10.
|
||||
*/
|
||||
|
||||
a {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Improve readability when focused and also mouse hovered in all browsers.
|
||||
*/
|
||||
|
||||
a:active,
|
||||
a:hover {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
/* Text-level semantics
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
|
||||
*/
|
||||
|
||||
abbr[title] {
|
||||
border-bottom: 1px dotted;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
|
||||
*/
|
||||
|
||||
b,
|
||||
strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address styling not present in Safari and Chrome.
|
||||
*/
|
||||
|
||||
dfn {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address variable `h1` font-size and margin within `section` and `article`
|
||||
* contexts in Firefox 4+, Safari, and Chrome.
|
||||
*/
|
||||
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin: 0.67em 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address styling not present in IE 8/9.
|
||||
*/
|
||||
|
||||
mark {
|
||||
background: #ff0;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address inconsistent and variable font size in all browsers.
|
||||
*/
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
|
||||
*/
|
||||
|
||||
sub,
|
||||
sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
/* Embedded content
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove border when inside `a` element in IE 8/9/10.
|
||||
*/
|
||||
|
||||
img {
|
||||
border: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct overflow not hidden in IE 9/10/11.
|
||||
*/
|
||||
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* Grouping content
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Address margin not present in IE 8/9 and Safari.
|
||||
*/
|
||||
|
||||
figure {
|
||||
margin: 1em 40px;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address differences between Firefox and other browsers.
|
||||
*/
|
||||
|
||||
hr {
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Contain overflow in all browsers.
|
||||
*/
|
||||
|
||||
pre {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address odd `em`-unit font size rendering in all browsers.
|
||||
*/
|
||||
|
||||
code,
|
||||
kbd,
|
||||
pre,
|
||||
samp {
|
||||
font-family: var(--font-monospace);
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
/* Forms
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Known limitation: by default, Chrome and Safari on OS X allow very limited
|
||||
* styling of `select`, unless a `border` property is set.
|
||||
*/
|
||||
|
||||
/**
|
||||
* 1. Correct color not being inherited.
|
||||
* Known issue: affects color of disabled elements.
|
||||
* 2. Correct font properties not being inherited.
|
||||
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
|
||||
*/
|
||||
|
||||
button,
|
||||
input,
|
||||
optgroup,
|
||||
select,
|
||||
textarea {
|
||||
color: inherit; /* 1 */
|
||||
font: inherit; /* 2 */
|
||||
margin: 0; /* 3 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Address `overflow` set to `hidden` in IE 8/9/10/11.
|
||||
*/
|
||||
|
||||
button {
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address inconsistent `text-transform` inheritance for `button` and `select`.
|
||||
* All other form control elements do not inherit `text-transform` values.
|
||||
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
|
||||
* Correct `select` style inheritance in Firefox.
|
||||
*/
|
||||
|
||||
button,
|
||||
select {
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
||||
* and `video` controls.
|
||||
* 2. Correct inability to style clickable `input` types in iOS.
|
||||
* 3. Improve usability and consistency of cursor style between image-type
|
||||
* `input` and others.
|
||||
*/
|
||||
|
||||
button,
|
||||
html input[type="button"], /* 1 */
|
||||
input[type="reset"],
|
||||
input[type="submit"] {
|
||||
-webkit-appearance: button; /* 2 */
|
||||
cursor: pointer; /* 3 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Re-set default cursor for disabled elements.
|
||||
*/
|
||||
|
||||
button[disabled],
|
||||
html input[disabled] {
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove inner padding and border in Firefox 4+.
|
||||
*/
|
||||
|
||||
button::-moz-focus-inner,
|
||||
input::-moz-focus-inner {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
|
||||
* the UA stylesheet.
|
||||
*/
|
||||
|
||||
input {
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
/**
|
||||
* It's recommended that you don't attempt to style these elements.
|
||||
* Firefox's implementation doesn't respect box-sizing, padding, or width.
|
||||
*
|
||||
* 1. Address box sizing set to `content-box` in IE 8/9/10.
|
||||
* 2. Remove excess padding in IE 8/9/10.
|
||||
*/
|
||||
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
box-sizing: border-box; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
|
||||
* `font-size` values of the `input`, it causes the cursor style of the
|
||||
* decrement button to change from `default` to `text`.
|
||||
*/
|
||||
|
||||
input[type="number"]::-webkit-inner-spin-button,
|
||||
input[type="number"]::-webkit-outer-spin-button {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
|
||||
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
|
||||
* (include `-moz` to future-proof).
|
||||
*/
|
||||
|
||||
input[type="search"] {
|
||||
-webkit-appearance: textfield; /* 1 */
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box; /* 2 */
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
|
||||
* Safari (but not Chrome) clips the cancel button when the search input has
|
||||
* padding (and `textfield` appearance).
|
||||
*/
|
||||
|
||||
input[type="search"]::-webkit-search-cancel-button,
|
||||
input[type="search"]::-webkit-search-decoration {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Define consistent border, margin, and padding.
|
||||
*/
|
||||
|
||||
fieldset {
|
||||
border: 1px solid #c0c0c0;
|
||||
margin: 0 2px;
|
||||
padding: 0.35em 0.625em 0.75em;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct `color` not being inherited in IE 8/9/10/11.
|
||||
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
|
||||
*/
|
||||
|
||||
legend {
|
||||
border: 0; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove default vertical scrollbar in IE 8/9/10/11.
|
||||
*/
|
||||
|
||||
textarea {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* Don't inherit the `font-weight` (applied by a rule above).
|
||||
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
|
||||
*/
|
||||
|
||||
optgroup {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* Tables
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove most spacing between table cells.
|
||||
*/
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
td,
|
||||
th {
|
||||
padding: 0;
|
||||
}
|
||||
279
docs/api/css/template.css
Normal file
279
docs/api/css/template.css
Normal file
@ -0,0 +1,279 @@
|
||||
|
||||
.phpdocumentor-content {
|
||||
position: relative;
|
||||
display: flex;
|
||||
gap: var(--spacing-md);
|
||||
}
|
||||
|
||||
.phpdocumentor-content > section:first-of-type {
|
||||
width: 75%;
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
@media (min-width: 1900px) {
|
||||
.phpdocumentor-content > section:first-of-type {
|
||||
width: 100%;
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
}
|
||||
|
||||
.phpdocumentor .phpdocumentor-content__title {
|
||||
margin-top: 0;
|
||||
}
|
||||
.phpdocumentor-summary {
|
||||
font-style: italic;
|
||||
}
|
||||
.phpdocumentor-description {
|
||||
margin-bottom: var(--spacing-md);
|
||||
}
|
||||
.phpdocumentor-element {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.phpdocumentor-element .phpdocumentor-element {
|
||||
border: 1px solid var(--primary-color-lighten);
|
||||
margin-bottom: var(--spacing-md);
|
||||
padding: var(--spacing-xs);
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.phpdocumentor-element.-deprecated .phpdocumentor-element__name {
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
@media (min-width: 550px) {
|
||||
.phpdocumentor-element .phpdocumentor-element {
|
||||
margin-bottom: var(--spacing-lg);
|
||||
padding: var(--spacing-md);
|
||||
}
|
||||
}
|
||||
|
||||
.phpdocumentor-element__modifier {
|
||||
font-size: var(--text-xxs);
|
||||
padding: calc(var(--spacing-base-size) / 4) calc(var(--spacing-base-size) / 2);
|
||||
color: var(--text-color);
|
||||
background-color: var(--light-gray);
|
||||
border-radius: 3px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.phpdocumentor .phpdocumentor-elements__header {
|
||||
margin-top: var(--spacing-xxl);
|
||||
margin-bottom: var(--spacing-lg);
|
||||
}
|
||||
|
||||
.phpdocumentor .phpdocumentor-element__name {
|
||||
line-height: 1;
|
||||
margin-top: 0;
|
||||
font-weight: 300;
|
||||
font-size: var(--text-lg);
|
||||
word-break: break-all;
|
||||
margin-bottom: var(--spacing-sm);
|
||||
}
|
||||
|
||||
@media (min-width: 550px) {
|
||||
.phpdocumentor .phpdocumentor-element__name {
|
||||
font-size: var(--text-xl);
|
||||
margin-bottom: var(--spacing-xs);
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
.phpdocumentor .phpdocumentor-element__name {
|
||||
margin-bottom: var(--spacing-md);
|
||||
}
|
||||
}
|
||||
|
||||
.phpdocumentor-element__package,
|
||||
.phpdocumentor-element__extends,
|
||||
.phpdocumentor-element__implements {
|
||||
display: block;
|
||||
font-size: var(--text-xxs);
|
||||
font-weight: normal;
|
||||
opacity: .7;
|
||||
}
|
||||
|
||||
.phpdocumentor-element__package .phpdocumentor-breadcrumbs {
|
||||
display: inline;
|
||||
}
|
||||
.phpdocumentor .phpdocumentor-signature {
|
||||
display: block;
|
||||
font-size: var(--text-sm);
|
||||
border: 1px solid #f0f0f0;
|
||||
margin-bottom: calc(var(--spacing-sm));
|
||||
}
|
||||
|
||||
.phpdocumentor .phpdocumentor-signature.-deprecated .phpdocumentor-signature__name {
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
@media (min-width: 550px) {
|
||||
.phpdocumentor .phpdocumentor-signature {
|
||||
margin-left: calc(var(--spacing-xl) * -1);
|
||||
width: calc(100% + var(--spacing-xl));
|
||||
}
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents {
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry {
|
||||
margin-bottom: var(--spacing-xxs);
|
||||
margin-left: 2rem;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry > a {
|
||||
flex: 0 1 auto;
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry > a.-deprecated {
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry > span {
|
||||
flex: 1;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry:after {
|
||||
content: '';
|
||||
height: 12px;
|
||||
width: 12px;
|
||||
left: 16px;
|
||||
position: absolute;
|
||||
}
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-private:after {
|
||||
background: url('data:image/svg+xml;utf8,<svg width="8" height="10" viewBox="0 0 8 10" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="4" width="8" height="6" rx="1.4" fill="%23EE6749"/><path d="M2 4C2 3 2.4 1 4 1C5.6 1 6 3 6 4" stroke="%23EE6749" stroke-width="1.4"/></svg>') no-repeat;
|
||||
}
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-protected:after {
|
||||
left: 13px;
|
||||
background: url('data:image/svg+xml;utf8,<svg width="11" height="9" viewBox="0 0 11 9" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="8" height="6" rx="1.4" fill="%23EE9949"/><path d="M5 4C5 3 4.6 1 3 1C1.4 1 1 3 1 4" stroke="%23EE9949" stroke-width="1.4"/></svg>') no-repeat;
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry:before {
|
||||
width: 1.25rem;
|
||||
height: 1.25rem;
|
||||
line-height: 1.25rem;
|
||||
background: transparent url('data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="10" cy="10" r="10" fill="hsl( 96, 57%, 60%)"/></svg>') no-repeat center center;
|
||||
content: '';
|
||||
position: absolute;
|
||||
left: 0;
|
||||
border-radius: 50%;
|
||||
font-weight: 600;
|
||||
color: white;
|
||||
text-align: center;
|
||||
font-size: .75rem;
|
||||
margin-top: .2rem;
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-method:before {
|
||||
content: 'M';
|
||||
color: '';
|
||||
background-image: url('data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="10" cy="10" r="10" fill="hsl( 96, 57%, 60%)"/></svg>');
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-function:before {
|
||||
content: 'M';
|
||||
color: ' 96';
|
||||
background-image: url('data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="10" cy="10" r="10" fill="hsl( 96, 57%, 60%)"/></svg>');
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-property:before {
|
||||
content: 'P'
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-constant:before {
|
||||
content: 'C';
|
||||
background-color: transparent;
|
||||
background-image: url('data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="-3.05176e-05" y="9.99998" width="14.1422" height="14.1422" transform="rotate(-45 -3.05176e-05 9.99998)" fill="hsl( 96, 57%, 60%)"/></svg>');
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-class:before {
|
||||
content: 'C'
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-interface:before {
|
||||
content: 'I'
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-trait:before {
|
||||
content: 'T'
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-namespace:before {
|
||||
content: 'N'
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-package:before {
|
||||
content: 'P'
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents .phpdocumentor-table-of-contents__entry.-enum:before {
|
||||
content: 'E'
|
||||
}
|
||||
|
||||
.phpdocumentor-table-of-contents dd {
|
||||
font-style: italic;
|
||||
margin-left: 2rem;
|
||||
}
|
||||
.phpdocumentor-element-found-in {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media (min-width: 550px) {
|
||||
.phpdocumentor-element-found-in {
|
||||
display: block;
|
||||
font-size: var(--text-sm);
|
||||
color: gray;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
.phpdocumentor-element-found-in {
|
||||
position: absolute;
|
||||
top: var(--spacing-sm);
|
||||
right: var(--spacing-sm);
|
||||
font-size: var(--text-sm);
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.phpdocumentor-element-found-in .phpdocumentor-element-found-in__source {
|
||||
flex: 0 1 auto;
|
||||
display: inline-flex;
|
||||
}
|
||||
|
||||
.phpdocumentor-element-found-in .phpdocumentor-element-found-in__source:after {
|
||||
width: 1.25rem;
|
||||
height: 1.25rem;
|
||||
line-height: 1.25rem;
|
||||
background: transparent url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="gray"><path d="M5.854 4.854a.5.5 0 1 0-.708-.708l-3.5 3.5a.5.5 0 0 0 0 .708l3.5 3.5a.5.5 0 0 0 .708-.708L2.707 8l3.147-3.146zm4.292 0a.5.5 0 0 1 .708-.708l3.5 3.5a.5.5 0 0 1 0 .708l-3.5 3.5a.5.5 0 0 1-.708-.708L13.293 8l-3.147-3.146z" stroke="gray" stroke-width="1.4"/></svg>') no-repeat center center;
|
||||
content: '';
|
||||
left: 0;
|
||||
border-radius: 50%;
|
||||
font-weight: 600;
|
||||
text-align: center;
|
||||
font-size: .75rem;
|
||||
margin-top: .2rem;
|
||||
}
|
||||
.phpdocumentor-class-graph {
|
||||
width: 100%; height: 600px; border:1px solid black; overflow: hidden
|
||||
}
|
||||
|
||||
.phpdocumentor-class-graph__graph {
|
||||
width: 100%;
|
||||
}
|
||||
.phpdocumentor-tag-list__definition {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.phpdocumentor-tag-link {
|
||||
margin-right: var(--spacing-sm);
|
||||
}
|
||||
.phpdocumentor-uml-diagram svg {
|
||||
cursor: zoom-in;
|
||||
}
|
||||
280
docs/api/files/app-controllers-authcontroller.html
Normal file
280
docs/api/files/app-controllers-authcontroller.html
Normal file
@ -0,0 +1,280 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -file">
|
||||
<h2 class="phpdocumentor-content__title">AuthController.php</h2>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="files/app-controllers-authcontroller.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-classes">
|
||||
Classes
|
||||
<a href="files/app-controllers-authcontroller.html#toc-classes" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/App-Controllers-AuthController.html"><abbr title="\App\Controllers\AuthController">AuthController</abbr></a></dt><dd>Zuständig für alles rund um den Login:
|
||||
- Login-Formular anzeigen
|
||||
- Login-Daten verarbeiten (Authentifizierung gegen LDAP/AD)
|
||||
- Logout durchführen</dd> </dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Controllers/AuthController.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="files/app-controllers-authcontroller.html#toc-classes">Classes</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="files/app-controllers-authcontroller.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
277
docs/api/files/app-controllers-dashboardcontroller.html
Normal file
277
docs/api/files/app-controllers-dashboardcontroller.html
Normal file
@ -0,0 +1,277 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -file">
|
||||
<h2 class="phpdocumentor-content__title">DashboardController.php</h2>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="files/app-controllers-dashboardcontroller.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-classes">
|
||||
Classes
|
||||
<a href="files/app-controllers-dashboardcontroller.html#toc-classes" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/App-Controllers-DashboardController.html"><abbr title="\App\Controllers\DashboardController">DashboardController</abbr></a></dt><dd>Controller für das Dashboard.</dd> </dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Controllers/DashboardController.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="files/app-controllers-dashboardcontroller.html#toc-classes">Classes</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="files/app-controllers-dashboardcontroller.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
277
docs/api/files/app-controllers-usermanagementcontroller.html
Normal file
277
docs/api/files/app-controllers-usermanagementcontroller.html
Normal file
@ -0,0 +1,277 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -file">
|
||||
<h2 class="phpdocumentor-content__title">UserManagementController.php</h2>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 id="toc">
|
||||
Table of Contents
|
||||
<a href="files/app-controllers-usermanagementcontroller.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 id="toc-classes">
|
||||
Classes
|
||||
<a href="files/app-controllers-usermanagementcontroller.html#toc-classes" class="headerlink"><i class="fas fa-link"></i></a>
|
||||
|
||||
</h4>
|
||||
<dl class="phpdocumentor-table-of-contents">
|
||||
<dt class="phpdocumentor-table-of-contents__entry -class"><a href="classes/App-Controllers-UserManagementController.html"><abbr title="\App\Controllers\UserManagementController">UserManagementController</abbr></a></dt><dd>Controller für die Benutzer- und Gruppenanzeige.</dd> </dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="phpdocumentor-modal" id="source-view">
|
||||
<div class="phpdocumentor-modal-bg" data-exit-button></div>
|
||||
<div class="phpdocumentor-modal-container">
|
||||
<div class="phpdocumentor-modal-content">
|
||||
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/app/Controllers/UserManagementController.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
|
||||
</div>
|
||||
<button data-exit-button class="phpdocumentor-modal__close">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
function loadExternalCodeSnippet(el, url, line) {
|
||||
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
|
||||
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
|
||||
const language = 'php';
|
||||
|
||||
const code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
pre.textContent = '';
|
||||
pre.setAttribute('data-line', line)
|
||||
code.textContent = 'Loading…';
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState !== 4) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
Prism.highlightElement(code);
|
||||
d=document.getElementsByClassName("line-numbers");
|
||||
d[0].scrollTop = d[0].children[1].offsetTop;
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status === 404) {
|
||||
code.textContent = '✖ Error: File could not be found';
|
||||
return;
|
||||
}
|
||||
|
||||
if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
return;
|
||||
}
|
||||
|
||||
code.textContent = '✖ Error: An unknown error occurred';
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
const modalButtons = document.querySelectorAll("[data-modal]");
|
||||
const openedAsLocalFile = window.location.protocol === 'file:';
|
||||
if (modalButtons.length > 0 && openedAsLocalFile) {
|
||||
console.warn(
|
||||
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
|
||||
'browsers block XHR requests when a page is opened this way'
|
||||
);
|
||||
}
|
||||
|
||||
modalButtons.forEach(function (trigger) {
|
||||
if (openedAsLocalFile) {
|
||||
trigger.setAttribute("hidden", "hidden");
|
||||
}
|
||||
|
||||
trigger.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
const modal = document.getElementById(trigger.dataset.modal);
|
||||
if (!modal) {
|
||||
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
|
||||
return;
|
||||
}
|
||||
modal.classList.add("phpdocumentor-modal__open");
|
||||
|
||||
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
|
||||
const exits = modal.querySelectorAll("[data-exit-button]");
|
||||
exits.forEach(function (exit) {
|
||||
exit.addEventListener("click", function (event) {
|
||||
event.preventDefault();
|
||||
modal.classList.remove("phpdocumentor-modal__open");
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
</article>
|
||||
</section>
|
||||
<section class="phpdocumentor-on-this-page__sidebar">
|
||||
|
||||
<section class="phpdocumentor-on-this-page__content">
|
||||
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
|
||||
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
|
||||
<li>
|
||||
<ul class="phpdocumentor-list -clean">
|
||||
<li><a href="files/app-controllers-usermanagementcontroller.html#toc-classes">Classes</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||||
<section class="phpdocumentor-search-results__dialog">
|
||||
<header class="phpdocumentor-search-results__header">
|
||||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||||
</header>
|
||||
<section class="phpdocumentor-search-results__body">
|
||||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<a href="files/app-controllers-usermanagementcontroller.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||||
|
||||
</main>
|
||||
|
||||
<script>
|
||||
cssVars({});
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
277
docs/api/files/app-services-ldap-ldapauthservice.html
Normal file
277
docs/api/files/app-services-ldap-ldapauthservice.html
Normal file
@ -0,0 +1,277 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Documentation</title>
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<base href="../">
|
||||
<link rel="icon" href="images/favicon.ico"/>
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/base.css">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="css/template.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
|
||||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||||
<script src="js/template.js"></script>
|
||||
<script src="js/search.js"></script>
|
||||
<script defer src="js/searchIndex.js"></script>
|
||||
</head>
|
||||
<body id="top">
|
||||
<header class="phpdocumentor-header phpdocumentor-section">
|
||||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||||
<i class="fas fa-bars"></i>
|
||||
</label>
|
||||
<section data-search-form class="phpdocumentor-search">
|
||||
<label>
|
||||
<span class="visually-hidden">Search for</span>
|
||||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||||
</svg>
|
||||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||||
</label>
|
||||
</section>
|
||||
|
||||
<nav class="phpdocumentor-topnav">
|
||||
<ul class="phpdocumentor-topnav__menu">
|
||||
</ul>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main class="phpdocumentor">
|
||||
<div class="phpdocumentor-section">
|
||||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||||
Menu
|
||||
</label>
|
||||
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
|
||||
<section class="phpdocumentor-sidebar__category -namespaces">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="namespaces/app.html" class="">App</a>
|
||||
</h4>
|
||||
<ul class="phpdocumentor-list">
|
||||
<li>
|
||||
<a href="namespaces/app-controllers.html" class="">Controllers</a>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<a href="namespaces/app-services.html" class="">Services</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
<section class="phpdocumentor-sidebar__category -packages">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
|
||||
<h4 class="phpdocumentor-sidebar__root-namespace">
|
||||
<a href="packages/Application.html" class="">Application</a>
|
||||
</h4>
|
||||
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -reports">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||||
</section>
|
||||
|
||||
<section class="phpdocumentor-sidebar__category -indices">
|
||||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
<div class="phpdocumentor-column -nine phpdocumentor-content">
|
||||
<section>
|
||||
<ul class="phpdocumentor-breadcrumbs">
|
||||
</ul>
|
||||
|
||||
<article class="phpdocumentor-element -file">
|
||||
<h2 class="phpdocumentor-content__title">LdapAuthService.php</h2>
|
||||