Startseite
NexoPOS

ns.forms

Dieser Filter wird verwendet, um vorhandene Formulare zu registrieren oder zu bearbeiten. In NexoPOS werden Formulare im Verzeichnis app/Forms definiert und im Service-Provider app/Providers/FormsProvider.php registriert. Der Filter ns.forms unterstützt zwei Parameter: die Klasse, die zurückgegeben werden muss, und den Bezeichner, der abgeglichen werden soll.

Wenn NexoPOS versucht, ein benutzerdefiniertes Formular mit der Kennung „your-custom-id“ zu laden, stellt es diesen Wert als Kennung bereit, und beim Registrieren Ihrer Klasse müssen Sie prüfen, ob eine Übereinstimmung vorliegt. Hier ist ein Beispiel.


<?php 
namespace Modules\YourModule\Providers;

use Illuminate\Support\ServiceProvider;
use Modules\YourModule\Forms\YourCustomForm;

class YourServiceProvier extends ServiceProvider
{
    public function boot()
    {
        Hook::addFilter( 'ns.forms', function( $class, $identifier ) {
            switch ( $identifier ) {
                case 'your-custom-id':
                    return new YourCustomForm;
            }

            return $class;
        }, 10, 2 );
    }
}

Wir sind hier, um ein benutzerdefiniertes Formular in unserem Modul zu definieren, das die Kennung „YourModule“ hat. Jedes Mal, wenn NexoPOS ein Formular mit der Kennung „your-custom-id“ benötigt, hat es die Klasse „YourCustomForm“. Wenn die $identifier nicht mit unserer Kennung übereinstimmt, müssen wir den Wert von $class zurückgeben. Dies ist notwendig, da das Formular möglicherweise entweder vom Core oder von einem anderen Modul definiert und verarbeitet wird.