it-swarm.dev

La convalida personalizzata del modulo Params è possibile?

Ora ho delle situazioni per convalidare i parametri del modulo sul lato amministratore di un modulo.

So che esiste un'opzione con Filtro nei parametri del modulo ma è limitata, non riesco a convalidare alcuni schemi o condizioni personalizzate.

C'è qualche opzione disponibile in Joomla per convalidare i parametri del modulo sul lato amministratore?

Grazie in anticipo.

4
Jobin Jose

È possibile creare una regola personalizzata per la convalida. Ad esempio il nome del tuo modulo è mod_mymodule:

  • Aggiungi l'attributo addrulepath al fieldset nel file .xml:

    addrulepath = "modules/mod_mymodule"

Questo sarà il percorso della cartella delle regole personalizzate.

  • Aggiungi l'attributo validate al campo con il nome del file della regola:

    validate = "testint"

Questo ci darà il file testint.php.

  • Crea il file della regola testint.php e inseriscilo nel percorso specificato nell'attributo addrulepath. Quindi il percorso completo sarà:

    administrator/modules/mod_mymodule/testint.php

Ecco una semplice classe di regole di convalida:

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

dovrebbe estendere la classe JFormRule e avrai bisogno di un solo metodo, chiamato test. $value conterrà l'input dal campo. Qui lo stiamo testando per essere intero tra 0 e 2.

4
Dmitry Rekun