Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Drawio
bordertrue
diagramNamePrintEventsOverview
simpleViewerfalse
width600
linksauto
tbstyletop
lboxtrue
diagramWidth841
revision14

...

Generierungsdialog 

Der Generierungsdialog kann um Felder erweitert werden, um Informationen direkt vor dem Generieren abzufragen und in die Generierung rein zu reichen.

...

\Brandbox\PrintCore\PrintDocument\Render\Lib\Event\OnExecuteGenerate wird mit den Daten des Dialogs aufgerufen und baut einen AdvancedResponseStack auf, der dann zurückgegeben wird. Die oben beschriebenen Ausgabe reagieren abhängig des $type auf dieses Event.

Generierung

Das tatsächliche Verarbeiten der Werte aus dem Generierungsdialog, bzw. das Generieren des HTML geschieht dann in einem neuen Request. Um hier einzugreifen, können die Events für das Erweitern der Scopes verwendet werden. Die Scopes dienen beim Rendern als inhaltliche Struktur des Dokumentes, bzw. der Seiten. Diese Events sind \Brandbox\PrintCore\PrintDocument\Render\Lib\Event\OnPopulateScopeDocument, OnPopulateScopePage, OnPopulateScopeElement.

Mit \Brandbox\PrintCore\PrintDocument\Render\Lib\Event\OnExecuteRender kann auf den Prozess beim tatsächlichen Rendern des Dokumentes zugegriffen werden.

Nachdem das HTML erzeugt wurde, wird dann noch via Brandbox/Placeholder die Platzhalter ersetzt. Um den Kontext dazu zu definieren, kann \Brandbox\PrintCore\PrintDocument\Render\Lib\Event\OnPopulateContextPlaceholder verwendet werden.