Hallo A1S1,
es gibt auch dafür eine Möglichkeit.
Die Möglichkeit besteht aus den folgenden zwei Teilen.
Für den ersten Teil verwendest du die FEWAs und für den zweiten Teil erstellst du dir ein Visforms Custom-Plugin.
Teil 1: JavaScript im Frontend.
Das JavaScript macht das Folgende:
1.1 - Eine zusätzliche Checkbox zur Auswahl des PDF-Anfanges dynamisch erstellen.
Teil 2: PHP im Backend.
2.1 - Die zusätzliche Checkbox auswerten.
2.2 - Den PDF-Anhang an die E-Mail verhindern, falls die Checkbox nicht gesetzt wurde.
Die Erstellung eines Custom-Plugins wird in der Dokumentation beschrieben.
Custom-Plugin Erstellung:
docs.joomla-5.visforms.vi-solutions.de/d...-plugin-development/
Custom-Plugin Event-System:
docs.joomla-5.visforms.vi-solutions.de/d...-plugin-development/
Es gibt ein fertiges komplettes Custom-Plugin mit allen Events und Hilfsfunktionen als Template, das die Installation von Visforms mitbringt:
docs.joomla-5.visforms.vi-solutions.de/d...-plugin-development/
Der Entwickler kann dann selbst entscheiden, was zusätzlich alles geschehen soll.
Die Erstellung eines Custom-Plugins erfordert etwas Erfahrung in der PHP-Entwicklung unter Joomla.
Details zu 2.2: Den PDF-Anhang an die E-Mail verhindern.
Das Visforms Plugin 'E-Mail Anhänge' nutzt das Visforms Event 'onVisformsEmailPrepare' um die PDF Dokumente an die E-Mail zu hängen.
Das Custom-Plugin kennt ebenfalls das Visforms Event 'onVisformsEmailPrepare' und hat bereits einen leeren Rumpf-Handler implementiert:
Code:
public function onVisformsEmailPrepare(VisformsEmailPrepareEvent $event): void {
// context = 'com_visforms.form.resultmail'
// context = 'com_visforms.form.receiptmail'
$context = $event->getContext();
$mail = $event->getMail();
$form = $event->getForm();
// example code: simply change email text
// $mail->Body = '<p>My new admin email body.</p>';
// example code: add user selected mail recipients to admin email
// selected by multi-selection form field 'email-select'
return;
}
Im Custom-Plugin ist folgendes notwendig:
S-1 : Das Custom-Plugin muss in der Plugin-Reihenfolge vor dem Visforms Plugin 'E-Mail Anhänge' stehen und aufgerufen werden (Plugin Manager: Reihenfolge aufsteigend).
S-2: Die zusätzliche Checkbox wird ausgewertet.
S-3: Im Event-Handler des Events 'onVisformsEmailPrepare' muss die Abarbeitung des Events global für alle noch nicht aufgerufenen Plugins gestoppt werden.
S-4: Wird die Abarbeitung des Events gestoppt, kommt das Visforms Plugin 'E-Mail Anhänge' nicht dazu die PDF-Dokumente der E-Mail anzuhängen (siehe S-1).
Die E-Mail wird in diesem Fall ohne die PDF-Anhänge versendet.
Mit folgendem Aufruf kann die Abarbeitung des Events global für alle noch nicht aufgerufenen Plugins gestoppt werden:
Code:
$event->stopPropagation();
Liebe Grüße, Ingmar