Settings
Die Einstellungs-Funktion in der i-Scan unter Admin -> Settings dienen zur kundenspezifischen Konfiguration von Parametern zur Laufzeit.
Einstellungen werden in Modulen gruppiert und mit einem key benannt. Es werden diverse Datentypen (siehe unten) unterstützt.
Unterstützte Parameter
| Typ | Beschreibung |
|---|---|
| string | Wert wird wie übergeben abgelegt |
| integer | Wert wird in int konvertiert und beim speichern auf int geprüft |
| bool | Wert wird als bool zurückgegeben und beim speichern auf boolgeprüft |
| array | Werte werden mit , seperator in der DB gespeichert und mit explode zurückgegeben |
| int_array | Werte werden mit , seperator in der DB gespeichert und auf int geprüft und mit explode zurückgegeben |
| json | Wert wird als string behandelt und bei der API mit json_decode ausgegeben |
Verwendung im Code
Settings können zur Laufzeit über die Komponente settingsHelper aufgerufen werden. Es gibt eine getSetting(KEY, MODULE) Funktion die den Wert als konvertierten Datentyp oder eine Exception wenn kein Key gefunden wurde zurück gibt. Zum setzen eines Wertes wird saveSetting(KEY, VALUE, TYPE, MODULE="core",
Anlegen eines Parameters
Um einen neuen Parameter bereitzustellen, wird eine Migration angelegt und der Key in der Tabelle hinzugefügt.
php
public function safeUp()
{
$this->insert('settings', [
'module' => 'core',
'k' => 'tenant_number',
'v' => 0,
'type' => 'integer',
'description' => 'Tenant number of EDBS',
'api' => 1
]);
}module-> Ist das standardmäßig das yii-modulek-> Schlüsselnamev-> Wert - Ist immer ein Stringtype-> Datentypdescription-> Text der unter dem Eingabefeld angezeigt wirdapi-> Wahr (1) dann wird der Wert über die REST API abrufbar