diff --git a/Documentation/Installation.rst b/Documentation/Installation.rst
index b8cf472712374a8ca8d89331c91a4ed7ee7eec84..9b608db96dec23ca52281a9986dbb9e4c1c3c190 100644
--- a/Documentation/Installation.rst
+++ b/Documentation/Installation.rst
@@ -45,8 +45,8 @@ The following features are only tested / supported on linux hosts:
 * Concatenation of PDF files - command `pdfunite`.
 * Convert of images to PDF files - command `img2pdf`.
 * PDF decrypt (used for merge with pdfunite) - command `qpdf`.
-* PDF decrypt (used for merge with pdfunite) - command `gs` - in case `qpdf` is not successful.
-* PDF fix (used for merge with pdfunite) - command `pdf2ps` and `ps2pdf` - in case `qpdf` is not successful.
+* PDF decrypt (used for merge with pdfunite) - command `gs` - if `qpdf` is not successful.
+* PDF fix (used for merge with pdfunite) - command `pdf2ps` and `ps2pdf` - if `qpdf` is not successful.
 * Mime type detection for uploads - command `file`.
 * Split PDF into JPG - command `convert`.
 * Repair PDF - command `pdftocairo`.
@@ -259,8 +259,11 @@ Setup CSS & JS
         file06 = typo3conf/ext/qfq/Resources/Public/Css/bootstrap-datetimepicker.min.css
         file07 = typo3conf/ext/qfq/Resources/Public/Css/codemirror.css
 
-        # Only needed in case FullCalendar is used
+        # Only needed if FullCalendar is used
         file10 = typo3conf/ext/qfq/Resources/Public/Css/fullcalendar.min.css
+
+        # Only needed if FormElement 'upload' filepond is used
+        file11 = typo3conf/ext/qfq/Resources/Public/Css/filepond.min.css
     }
 
     page.includeJS {
@@ -279,15 +282,20 @@ Setup CSS & JS
         file13 = typo3conf/ext/qfq/Resources/Public/JavaScript/codemirror.min.js
         file14 = typo3conf/ext/qfq/Resources/Public/JavaScript/code-mirror-mode/sql/sql.min.js
 
-        # Only needed in case FormElement 'annotate' is used.
+        # Only needed if FormElement 'annotate' is used.
         file20 = typo3conf/ext/qfq/Resources/Public/JavaScript/fabric.min.js
         file21 = typo3conf/ext/qfq/Resources/Public/JavaScript/qfq.fabric.min.js
 
-        # Only needed in case FullCalendar is used.
+        # Only needed if FullCalendar is used.
         file22 = typo3conf/ext/qfq/Resources/Public/JavaScript/fullcalendar.min.js
 
-        # Only needed in case widget-output is used.
+        # Only needed if widget-output is used.
         file23 = typo3conf/ext/qfq/Resources/Public/JavaScript/widget-output.min.js
+
+        # Only needed if FormElement 'upload' filepond is used.
+        file24 = typo3conf/ext/qfq/Resources/Public/JavaScript/filepond.min.js
+        file25 = typo3conf/ext/qfq/Resources/Public/JavaScript/filepond-plugin-file-validate-size.min.js
+        file25 = typo3conf/ext/qfq/Resources/Public/JavaScript/filepond-plugin-file-validate-type.min.js
     }
 
 
@@ -889,8 +897,8 @@ Example: ::
 
    fillStoreSystemBySqlRow: SELECT gr.reference AS name, IF('{{pageLanguage:T}}'=0 OR gr.value2='', gr.value, gr.value2) AS value FROM Ggroup AS gr WHERE gr.storeSystem='yes'
 
-
-To retrieve the value, name is used as variable name. For example if the column reference from one record is named 'id_accepted' and related column value has the value '22': ::
+To retrieve the value, name is used as variable name. For example if the column reference from one record is named
+'id_accepted' and related column value has the value '22': ::
 
    {{id_accepted:Y}}
 
diff --git a/extension/Classes/Core/AbstractBuildForm.php b/extension/Classes/Core/AbstractBuildForm.php
index c5363f7325e103bcef76e7cefa1f6fc2acd1117a..d98ab07b56f4ae6751433b2c57e734fc768cbb63 100644
--- a/extension/Classes/Core/AbstractBuildForm.php
+++ b/extension/Classes/Core/AbstractBuildForm.php
@@ -3285,7 +3285,10 @@ abstract class AbstractBuildForm {
          // Check for upload type new or old and initialize json config for new upload type
          $jsonConfig = array();
          $preloadedFiles = '';
-
+         $downloadButton = $formElement[FE_FILE_DOWNLOAD_BUTTON] ?? false;
+         if ($downloadButton) {
+             $downloadButton = substr($this->evaluate->parse($formElement[FE_FILE_DOWNLOAD_BUTTON]), 2);
+         }
          $jsonConfig[UPLOAD_MIME_TYPE_ACCEPT] = $formElement[FE_FILE_MIME_TYPE_ACCEPT] ?? null;
          $jsonConfig[UPLOAD_MAX_FILE_SIZE] = $arr[FE_FILE_MAX_FILE_SIZE] ?? null;
          $jsonConfig[UPLOAD_MULTI_UPLOAD] = false;
@@ -3300,7 +3303,7 @@ abstract class AbstractBuildForm {
          $jsonConfig[UPLOAD_ID] = 1;
          $jsonConfig[UPLOAD_GROUP_ID] = $groupId ?? 0;
          $jsonConfig[UPLOAD_DROP_BACKGROUND] = 'white';
-         $jsonConfig[UPLOAD_DOWNLOAD_BUTTON] = substr($this->evaluate->parse($formElement[FE_FILE_DOWNLOAD_BUTTON]), 2);
+         $jsonConfig[UPLOAD_DOWNLOAD_BUTTON] = $downloadButton;
          $jsonConfig[UPLOAD_TYPE_FORM] = true;
          $jsonConfig[UPLOAD_FORM_ID] = $formElement[FE_HTML_ID];
          $jsonConfig[UPLOAD_SIP_DOWNLOAD_KEY] = $sipDownloadKey;
diff --git a/javascript/build/copy.js b/javascript/build/copy.js
index 4fe12050d189eefe93e5cea90e3a09970f49763e..aa07f9c3b7c3426d91ade30ddb56f6aadac1b686 100644
--- a/javascript/build/copy.js
+++ b/javascript/build/copy.js
@@ -158,10 +158,10 @@ const todos = [
         css: "node_modules/filepond/dist/",
         custom: [
             {
-                from: "node_modules/filepond-plugin-file-validate-type/dist/filepond-plugin-file-validate-type.js",
+                from: "node_modules/filepond-plugin-file-validate-type/dist/filepond-plugin-file-validate-type.min.js",
                 to: target.js
             },{
-                from: "node_modules/filepond-plugin-file-validate-size/dist/filepond-plugin-file-validate-size.js",
+                from: "node_modules/filepond-plugin-file-validate-size/dist/filepond-plugin-file-validate-size.min.js",
                 to: target.js
             },
         ]
diff --git a/javascript/src/Main.js b/javascript/src/Main.js
index c01bcbe92306fd428521c7dd187a219620484a54..675ff717a770027abbd063e8c8542c88bac899e7 100644
--- a/javascript/src/Main.js
+++ b/javascript/src/Main.js
@@ -247,8 +247,6 @@ $(document).ready( function () {
 
         FilePond.registerPlugin(FilePondPluginFileValidateSize);
         FilePond.registerPlugin(FilePondPluginFileValidateType);
-        FilePond.registerPlugin(FilePondPluginImagePreview);
-        FilePond.registerPlugin(FilePondPluginImageEdit);
 
         // Get a reference to the file input element
         const inputElements = document.querySelectorAll('input[type="file"].fileupload');