it-swarm.com.de

Module Params Custom Validation ist möglich?

Jetzt habe ich Situationen, um Modulparameter auf der Admin-Seite eines Moduls zu validieren.

Ich weiß, dass es in Modulparametern eine Option mit Filter gibt, aber diese ist begrenzt. Ich kann einige Muster oder benutzerdefinierte Bedingungen nicht validieren.

Gibt es eine Option in Joomla, um Modulparameter auf der Admin-Seite zu validieren?

Danke im Voraus.

4
Jobin Jose

Sie können eine benutzerdefinierte Regel zur Validierung erstellen. Zum Beispiel ist Ihr Modulname mod_mymodule:

  • Fügen Sie dem Fieldset in der XML-Datei das Attribut addrulepath hinzu:

    addrulepath = "modules/mod_mymodule"

Dies ist der Pfad zum benutzerdefinierten Regelordner.

  • Fügen Sie dem Feld das Attribut validate mit dem Namen der Regeldatei hinzu:

    validate = "testint"

Dies gibt uns die Datei testint.php.

  • Erstellen Sie die Regeldatei testint.php und fügen Sie ihn in den Pfad ein, der im Attribut addrulepath angegeben ist. Der vollständige Pfad lautet also:

    administrator/modules/mod_mymodule/testint.php

Hier ist eine einfache Validierungsregelklasse:

class JFormRuleTestint extends JFormRule
{
    public function test(&$element, $value, $group = null, &$input = null, &$form = null)
    {
        return ((int)$value > 0 && (int)$value < 2);
    }
}

es sollte die Klasse JFormRule erweitern, und Sie benötigen nur eine Methode namens test. $value enthält die Eingabe aus dem Feld. Hier testen wir, ob es eine ganze Zahl zwischen 0 und 2 ist.

4
Dmitry Rekun