Skip to content

Template Events

Die Template-Events beziehen sich auf das Erstellen, Bearbeiten und Löschen von Templates.
Alle drei Events teilen sich eine gemeinsame Grundstruktur und bieten zusätzliche Methoden, um den Ablauf gezielt zu steuern.


Gemeinsame Methoden

  • getWho(): ?UserModel
    Gibt das UserModel des Nutzers zurück, der die Aktion ausgelöst hat.
    Kann null sein, wenn kein Benutzer beteiligt war.

  • getTemplate(): TemplateModel
    Liefert das betroffene TemplateModel.

  • stopAction(string $message): void
    Stoppt die Ausführung des Events.

    • Die laufende Transaktion wird zurückgerollt.
    • Alle weiteren Listener werden nicht mehr ausgeführt.
    • Der Client erhält eine HTTP 400 Antwort mit dem Inhalt von $message.
  • getErrorMessage(): ?string
    Gibt die Fehlernachricht zurück, falls das Event gestoppt wurde.
    null, wenn das Event normal verarbeitet wurde.


TemplateCreatedEvent

Wird ausgelöst, wenn ein neues Template erstellt wird.

Typische Anwendungsfälle:

  • Validierungslogik
  • Anstoßen von Folgeaktionen
Beispiel: Validierungslogik prüfen und ggf. das Event mit einer Fehlermeldung stoppen
public function onTemplateCreated(TemplateCreatedEvent $event): void
{
    // ... Validierungslogik
    if ($failedValidation) {
        $event->stopAction("Validierung fehlgeschlagen!");
    }
}

TemplateUpdatedEvent

Wird ausgelöst, wenn ein bestehendes Template geändert wird.

Typische Anwendungsfälle:

  • Validierungslogik
  • Anstoßen von Folgeaktionen
Beispiel: Validierungslogik prüfen und ggf. das Event mit einer Fehlermeldung stoppen
public function onTemplateUpdated(TemplateCreatedUpdated $event): void
{
    // ... Validierungslogik
    if ($failedValidation) {
        $event->stopAction("Validierung fehlgeschlagen!");
    }
}

TemplateDeletedEvent

Wird ausgelöst, wenn ein Template gelöscht wird.

Typische Anwendungsfälle:

  • Validierungslogik
  • Anstoßen von Folgeaktionen
Beispiel: Validierungslogik prüfen und ggf. das Event mit einer Fehlermeldung stoppen
public function onTemplateDeleted(TemplateDeletedEvent $event): void
{
    // ... Validierungslogik
    if ($failedValidation) {
        $event->stopAction("Validierung fehlgeschlagen!");
    }
}