diff --git a/src/main/resources/static/js/fileInput.js b/src/main/resources/static/js/fileInput.js index 89ad1ad90..001c8f24f 100644 --- a/src/main/resources/static/js/fileInput.js +++ b/src/main/resources/static/js/fileInput.js @@ -104,4 +104,9 @@ function setupFileInput(chooser) { $(inputElement).siblings(".custom-file-label").addClass("selected").html(pdfPrompt); } } + //Listen for event of file being removed and the filter it out of the allFiles array + document.addEventListener("fileRemoved", function (e) { + const fileName = e.detail; + allFiles = allFiles.filter(file => file.name !== fileName); + }); } diff --git a/src/main/resources/static/js/merge.js b/src/main/resources/static/js/merge.js index 4936fa6bc..555757277 100644 --- a/src/main/resources/static/js/merge.js +++ b/src/main/resources/static/js/merge.js @@ -69,8 +69,13 @@ function attachMoveButtons() { removeButtons[i].addEventListener("click", function (event) { event.preventDefault(); var parent = this.closest(".list-group-item"); + //Get name of removed file + var fileName = parent.querySelector(".filename").innerText; parent.remove(); updateFiles(); + //Dispatch a custom event with the name of the removed file + var event = new CustomEvent("fileRemoved", { detail: fileName }); + document.dispatchEvent(event); }); } }