Joomla 5 Mitteilung

Wir freuen uns mitteilen zu können, dass seit dem 29. Januar 2024 alle unsere Joomla Erweiterungen mit Joomla 5 kompatible sind.

Für alle die gerade noch von Joomla 3 auf 4 aktualisieren: Anleitungen für die Joomla 4 Migration gibt es hier:

Es gibt nun auch eine eigenständige Dokumentation für Visforms für Joomla 4 und für Visforms auf Joomla 5

Forum

Visforms Subscription Inhaber können in unserem Forum Fragen stellen. Bitte mit dem entsprechenden Benutzer anmelden.
Jeder kann lesend auf das Forum zugreifen.

Bitte stellen Sie nur 1 Frage pro Thema.

Wichtige Angaben für fast jede Frage:
V1: Welche Visforms-Version läuft?
V2: Welche Joomla-Version läuft?
V3: Welche PHP-Version läuft?

Frage zu "Benutzer E-Mail nach Frontend-Daten-Änderung"

Mehr
2 Wochen 5 Tage her #11620 von A1S1
Visforms Version 5.4.1
PHP 8.3.22 (Linux)
Joomla  ‎5.3.1

Hallo,

ich bräuchte eine Hinweis, wie ich die Benutzer E-Mail nach Frontend-Daten-Änderung noch effizienter nutzen kann.
  1. Wenn also der "Benutzer" seine E-Mail erhält, habe ich das so gelöst, dass ich ein Edit Only Feld "$emailantwort" durch den Sachbearbeiter füllen lasse und diese dann im Benutzer E-Mail Text als einziger Text steht. Das funktioniert einwandfrei. Im weiteren Workflow muss der Sachbearbeiter jedoch noch ein zweites Mal einen Text verfassen und den würde ich dann in ein Edit Only Feld "$emailantwort2" speichern. Und jetzt kommt meine 1. Frage: Wie schaffe ich, dass der Platzhalter "$emailantwort" mit "$emailantwort2" überschrieben wird? Hier würde es mir helfen in die richtige Richtung gestoßen zu werden. 
  2. In dem selben Szenario benutze ich die Option "Senden nach Änderung" und habe die auf "Benutzer entscheidet" gesetzt. Das zeigt dann den Text: "Nach Speichern Benutzer E-Mail schicken" im Formular an. Meine 2. Frage ist nun, dass ich diesen Text sehr gerne ändern würde, z.B. in "E-Mail an den Kunden senden". Hier würde ich einen Denkanstoß benötigen, wo ich bei dieser Modifizierung anzusetzen habe. Ich hatte schon versucht, im Frontend Webasset zum Formular Javascript herzunehmen, aber das hat nicht funktioniert.
Wäre schön hier die nötigen Tipps zu bekommen.

Beste Grüße

A1S1

Mehr
2 Wochen 2 Tage her #11631 von Administrator IV
Hallo A1S1,

danke für die Versions-Informationen.

Hier erstmal die Antwort zu Frage 1:
Wie schaffe ich, dass der Platzhalter "$emailantwort" mit "$emailantwort2" überschrieben wird?

Das schaffst du recht einfach mit der speziellen Platzhalter-Option 'DIE'.
Spezielle Platzhalter-Optionen:
docs.joomla-5.visforms.vi-solutions.de/d...platzhalter-optionen

Leere Bereiche aufgrund einer Parameter-Ersetzung vermeiden:
docs.joomla-5.visforms.vi-solutions.de/d...eholder-empty-space/

Liebe Grüße, Ingmar

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).

Mehr
2 Wochen 2 Tage her - 2 Wochen 2 Tage her #11632 von Administrator IV
Hallo A1S1,

Hier die Antwort zu Frage 2:
Denkanstoß, wo ich bei dieser Modifizierung anzusetzen habe.

Es gibt 2 Möglichkeiten.

M1 - Language Override, gilt für alle Formulare.
Du erzeugst mit dem Joomla Sprachen-Manager ein Language Override für den folgenden Visforms Language-Eintrag:
COM_VISFORMS_EDIT_EMAIL_RECEIPT_SEND_USER_DECISION="Nach Speichern Benutzer E-Mail schicken"

M2 - FEWA, gilt für 1 Formular.
Das HTML-Stück mit der Checkbox für die Benutzer-E-Mail:
Code:
<label id="editemailreceiptuserdecision-lbl" class="form-check-label"> ... Nach Speichern Benutzer E-Mail schicken </label>


Das JavaScript zum Ändern des Label-Textes:
Code:
jQuery(document).ready(function() {     console.log('FEWA script loaded');     jQuery('#editemailreceiptuserdecision-lbl').get(0).lastChild.nodeValue = 'E-Mail an den Kunden senden'; });

Achtung: Das JavaScript gehört unter den Sub-Reiter 'Daten-Edit' der Reiters 'Frontend Webassets'.

Liebe Grüße, Ingmar

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).
Letzte Änderung: 2 Wochen 2 Tage her von Administrator IV.

Mehr
1 Woche 5 Tage her #11656 von A1S1
Hallo Ingmar,

ich habe mich für M2 - FEWA entschieden und entsprechend deiner Beschreibung hat alles sofort so funktioniert wie ich es wollte.

Mal wieder ein dickes DANKE!!! an dich und das Team!

Liebe Grüße 

A1S1

Mehr
1 Woche 5 Tage her #11657 von A1S1
Hallo Ingmar,

auch hier hast du mir sehr geholfen. Ich hatte die Option DIE schon gelesen, aber wie das so ist mit den vielen Bäumen und dem Wald... Dein Hinweis war goldwert!

Hierzu kommt nun aber eine weitere Frage. Mit der Lösung kann ich also das Formular bearbeiten und beim Speichern entscheiden, welcher Text and den "Kunden" verschickt wird. Nun wird aber auch eine .pdf-Datei generiert und die würde ich nicht bei jedem Speichern des Formulars an die E-Mail anhängen. Aber nur so kann ich das konfigurieren. Gibt es da eine Möglichkeit dem Bearbeiter des Formulars eine Option zu geben, damit er bestimmen kann wann die .pdf-Datei teil der E-Mail wird?

Nochmals aller besten Dank für dein Hilfen!

Liebe Grüße

A1S1

Mehr
1 Woche 1 Tag her - 1 Woche 1 Tag her #11664 von Administrator IV
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

:idea: I recommend you the new and up-to-date documentation for Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/en/docs/
Most of this also applies retrospectively to Joomla 3.
Please only ask 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 4:
docs.joomla-5.visforms.vi-solutions.de/docs/
Das meiste gilt rückwirkend auch für Joomla 3.
Bitte immer nur 1 Frage pro Thema stellen :-).
Letzte Änderung: 1 Woche 1 Tag her von Administrator IV.

Moderatoren: Administrator AVAdministrator IV
Powered by Kunena Forum