Validate

Mit diesem Plugin können Sie den eingegebenen Wert asynchron per Ajax Request testen und validieren. Ist der angegebene Wert ungültig, wird er nicht gespeichert.

Parameter-Name Typ Erforderlich Beschreibung
func String Ja

Die aufzurufende PHP Funktion. Diese muss true oder false zurückliefern. Falls ein String zurückgeliefert wird, wird dieser als Fehlermeldung angezeigt.

file String Nein

Der Pfad zur PHP Datei, mit Ihren Funktionen. Wenn Sie keinen Pfad angeben, wird eine System eigene Datei verwendet, die allerdings nicht kundenspezifisch anpassbar ist. Deshalb wird die Verwendung dieses Parameters empfohlen.

value String Nein

Der Standardwert. Ist der eingegebene Wert ungültig, wird dieser gesetzt. Dieser Standardwert wird ersetzt, sobald eine gültige Eingabe erfolgt.

pattern Array Nein

Ein regulärer Ausdruck, mit dem der eingegebene Wert bereits vor dem Ajax Request validiert werden kann. Dieser Parameter besteht aus einem Array mit den Elementen pattern (regulärer Ausdruck) und invalid (der Fehlertext).

invalid String Nein

Der anzuzeigende Fehlertext. Wird hier kein Text angegeben, ist nur optisch im Eingabefeld ein Fehler zu erkennen.

Beispiel

In folgendem Beispiel ist als Eingabe nur "barfoo" erlaubt.

{input type="validate" name="foobar" title="Test" file="pub/theme/DESIGN/site/admin/validate.php" func="test"}

In Ihrer PHP Funktion erhalten Sie als ersten Parameter das Array $params, welches folgende Informationen beinhaltet:

Parameter-Name Typ Beschreibung
site String

Der betroffene Mandant.

lang String

Die betroffene Sprache.

id Integer

Die betroffene ID.

value String

Der zu prüfende Wert.

function test($params) { return $params['value'] == 'barfoo'; }

Alternativ können Sie auch einen String als Rückgabewert zurückliefern. Dieser String wird dann als Fehlermeldung angezeigt. Ein leerer String als Rückgabewert wird als kein Fehler gewertet.

function test($params) { if ($params['value'] != 'barfoo') { return $GLOBALS['auth']->translate('In diesem Beispiel ist nur der Wert "barfoo" erlaubt'); } return ''; // Kein Fehler }
wb_incandescent

Sie können dieses Input Plugin auch in Kombination mit dem max_length Parameter nutzen.