Skip to content

3.2.7

Latest

Choose a tag to compare

@teris teris released this 12 Sep 12:50
· 11 commits to main since this release

3.2.7

Hinzugefügt

Erweiterte ISPConfig-API-Funktionen

Mail-Funktionen (12 Funktionen)
Sites-Funktionen (12 Funktionen)

ISPConfig-API-Erweiterungen

  • ISPConfigGet-Klasse erweitert: 37 neue GET-Methoden für DNS, Mail und Sites
  • ISPConfigPost-Klasse erweitert: 37 neue POST/PUT/DELETE-Methoden für DNS, Mail und Sites
  • Vollständige DNS-Record-Unterstützung: A, AAAA, CNAME, MX, TXT, NS, PTR, SRV, HINFO, NAPTR, RP, DS, Alias
  • Erweiterte Mail-Funktionalität: Domains, Aliases, Forwards, Catchalls, Blacklists, Whitelists, Spamfilter
  • Sites-Management: FTP-Users, Shell-Users, Cron-Jobs, Database-Users, Web-Subdomains, Aliasdomains

Dokumentation und Beispiele

  • ISPConfig_Funktionen_Übersicht.md: Vollständige Dokumentation aller neuen Funktionen
  • Beispiel-Verwendung: Detaillierte Code-Beispiele für alle Funktionskategorien
  • API-Referenz: Strukturierte Übersicht mit GET/POST-Funktionen

Technische Verbesserungen

  • Konsistente API-Struktur: Alle Funktionen folgen dem gleichen Muster
  • Erweiterte Fehlerbehandlung: Strukturierte Antworten mit Erfolg/Fehler-Status
  • API-Validierung: Automatische Prüfung ob ISPConfig aktiviert ist
  • Sichere Aufrufe: Verwendung der safeAPICall-Methode für alle neuen Funktionen
  • Filter-Unterstützung: Alle GET-Funktionen unterstützen optionale Filter-Parameter

Behoben

ServiceManager-Integration

  • safeAPICall-Parameter korrigiert: Alle neuen Funktionen verwenden korrekte Parameter-Reihenfolge
  • API-Name-Validierung: Konsistente Verwendung von 'ispconfig' als API-Name
  • Linter-Fehler behoben: Alle Type-Hint-Warnungen für safeAPICall-Aufrufe behoben

Technische Details

  • Framework-Erweiterung: 37 neue Methoden in der ServiceManager-Klasse
  • ISPConfig-API-Abdeckung: Vollständige Abdeckung der ISPConfig 3.x Remote-API
  • Rückwärtskompatibilität: Alle bestehenden Funktionen bleiben unverändert
  • Code-Qualität: Keine neuen Linter-Fehler, konsistente Code-Struktur

[3.2.6]

Behoben

Windows-spezifische Fehler

  • "Undefined array key 'node'" Fehler behoben: Kritischer Fehler in framework.php Zeilen 557 und 577 behoben
  • getNodes() Methode korrigiert: Gibt jetzt nur das data Array zurück statt der gesamten API-Antwort
  • Array-Key-Prüfung hinzugefügt: isset($nodeData['node']) Prüfung verhindert "Undefined array key" Warnungen
  • Konsistente Datenstruktur: Einheitliche Behandlung von Node-Daten zwischen getVMs() und getLXCs() Methoden
  • Disk-Space-Funktionen Windows-kompatibel: disk_free_space() und disk_total_space() Fehler in AdminCore.php behoben
  • Windows-Pfade hinzugefügt: XAMPP, WAMP, Laragon und Benutzer-Pfade für Windows-Umgebungen
  • Robuste Pfad-Prüfung: is_dir() und is_readable() Prüfungen vor Disk-Space-Abfragen
  • Array to String Conversion behoben: "Array to string conversion" Fehler in DatabaseManager.php Zeile 170 behoben
  • Robuste Parameter-Verarbeitung: Arrays werden automatisch zu JSON-Strings konvertiert in execute-Methoden

Technische Verbesserungen

  • Robuste Fehlerbehandlung: Verbesserte Behandlung von API-Fehlern in der Proxmox-Integration
  • Windows-Kompatibilität: Spezifische Behebung für Windows-Umgebungen (XAMPP, etc.)
  • Code-Stabilität: Verhindert PHP-Warnungen bei fehlenden Array-Keys

Geändert

  • getNodes() Rückgabewert: Gibt jetzt $response['data'] statt $response zurück
  • Node-Datenverarbeitung: isset() Prüfung für 'node' Key in allen Node-Iterationen
  • Fehlerbehandlung: Leere Arrays statt Fehler-Objekte bei API-Problemen

Technische Details

  • Betroffene Methoden: getNodes(), getVMs(), getLXCs(), getDiskUsage(), execute()
  • Betroffene Dateien: framework.php (Zeilen 528-545, 552, 572), src/core/AdminCore.php (Zeilen 844-890), src/core/DatabaseManager.php (alle execute-Methoden)
  • Windows-Pfade: C:, XAMPP, WAMP, Laragon, Benutzer-Desktop und -Dokumente
  • Fehlerbehandlung: @ Operator für disk-Space-Funktionen, Pfad-Existenz-Prüfung, Array-zu-JSON-Konvertierung
  • Datenbanktreiber: MySQL, PostgreSQL, SQLite - alle mit robuster Parameter-Verarbeitung
  • Kompatibilität: Rückwärtskompatibel, keine Breaking Changes