Server-Module erstellen: Unterschied zwischen den Versionen

Aus sourceDESK Wiki
Wechseln zu: Navigation, Suche
(Konfiguration)
Zeile 11: Zeile 11:
  
 
== Konfiguration ==
 
== 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:
 +
 
 +
<source lang="html4strict">
 +
<input type="text" data-setting="domain" value="<?=$this->getOption("domain");?>" placeholder="sourceway.de" class="form-control prov_settings" />
 +
</source>
 +
 
 +
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 erstellen ==

Version vom 12. Oktober 2018, 11:54 Uhr

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

...