Hallo Sebastian,
eine komplett saubere Validierung besteht sowohl aus einer browserseitigen Überprüfung mit Javascript als auch einer serverseitigen Validierung mit php.
Alle Validierungen, die Visforms mitbringt führen beide Überprüfungen aus.
Ob du das in diesem Fall auch benötigst musst du selbst entschieden.
Eine serverseitige Validierung liese sich meines Erachtens auf dem Event 'onVisformsBeforeFormSave' implementieren.
Zu den Visforms Event Handlern siehe:
docs.joomla-4.visforms.vi-solutions.de/d...-plugin-development/
Dieses Event wird sehr früh im components/com_visforms/src/Controller/VisformsController.php getriggered.
Es erhält das Formular und die Felder als Parameter.
Du kannst also durch deine Felder gehen und schauen ob eine Upload-Datei mit 0 Bytes hochgeladen werden soll.
Hier kannst du dich am Code in der administrator/components/com_visforms/helpers/visformsmedia.php orientieren.
Wenn ja gibst du dem $visform Objekt eine Fehlermeldung mit.
array_push($visform->errors, 'Fehlermeldung');
Und gibst ist deinem Event Handler false zurück.
Dann steigt der Controller im prozessieren des übermittelten Formulars aus und es wird das Formular dem Benutzer mit deiner Fehlermeldung erneut angezeigt.
Eine Browserseitige Implementierung würde mit individuellem Javascript erfolgen.
Du musst dabei geben den Visforms Submit Handler programmieren, wie das in der Dokumentation beschrieben ist.
docs.joomla-4.visforms.vi-solutions.de/d...-plugin-development/
Herzliche Grüße,
Aicha