Um Hosting-Produkte automatisch einzurichten, können Sie auch eigene Server-Module schreiben.
Dateistruktur
Ein Server-Modul bekommt ein eigenes Verzeichnis unter modules/provisioning. In diesem Verzeichnis muss sich eine PHP-Datei mit dem gleichen Namen wie das Verzeichnis und der Endung .php befinden. In dieser PHP-Datei wird eine Klasse definiert, die von der Klasse Provisioning erbt.
Attribute
Es werden mehrere Attribute innerhalb der erstellten Klasse benötigt, die höchstens protected sein dürfen:
- $name gibt einen Anzeigenamen für das Modul an
- $short gibt den Kurznamen des Moduls an, das entspricht dem Verzeichnis- bzw. Dateinamen
Konfiguration
Es wird eine Methode Config($id, $product = true) benötigt, diese bekommt eine Produkt-ID ($product = true) oder Vertrags-ID ($product = false) als Argument. Hier können Sie Form-Elemente erstellen. Bitte geben Sie Eingabefelder die CSS-Klasse prov-settings und ein Attribut data-setting mit dem Kurznamen der Einstellung, damit die Daten per Ajax übernommen werden können.
Beispiel:
<input type="text" data-setting="domain" value="<?=$this->getOption("domain");?>" placeholder="sourceway.de" class="form-control prov_settings" />
Sie können auch die Server-Verbindung prüfen lassen oder Daten vom Server abrufen - Beispiele hierzu finden Sie in den verschiedenen mitgelieferten Server-Modulen.
Vertrag erstellen
...
Vertrag löschen
...
Vertrag sperren / entsperren
...
Paket wechseln
...
Modul-Ausgabe
...
E-Mailvariablen
...
Eigene Funktionen
...
API-Integration
...
Beispiel-Code
...