From 7cd1eda767ab3396d42a31e3a5fd95ee1ac546e3 Mon Sep 17 00:00:00 2001 From: ilotterytea Date: Sun, 27 Jul 2025 13:01:23 +0500 Subject: fix: bug in file upload --- public/index.php | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) (limited to 'public/index.php') diff --git a/public/index.php b/public/index.php index 4d469b5..22189cb 100644 --- a/public/index.php +++ b/public/index.php @@ -526,6 +526,8 @@ $privacy_exists = is_file($_SERVER['DOCUMENT_ROOT'] . '/static/PRIVACY.txt'); document.getElementById('form-text-upload').style.display = 'none'; const uploadedFiles = document.getElementById('uploaded-files'); + const fileUploadWrapper = document.querySelector('#form-upload-wrapper>button'); + fileUploadWrapper.style.display = 'block'; let files = []; @@ -533,20 +535,29 @@ $privacy_exists = is_file($_SERVER['DOCUMENT_ROOT'] . '/static/PRIVACY.txt'); formUpload.addEventListener('submit', (event) => { event.preventDefault(); displayTab('file-tabs', 'uploaded-files'); - for (const file of files) { + if (files.length > 0) { + for (const file of files) { + const form = new FormData(formUpload); + form.set("file", file); + form.delete("paste"); + form.delete("url"); + uploadData(form); + } + files = []; + } else { const form = new FormData(formUpload); - form.set("file", file); + form.delete("file"); uploadData(form); } - files.clear(); + files = []; fileUploadWrapper.innerHTML = '

Click, drop, or paste files here

'; setFormDetailsVisiblity(false); + showFile(null); + fileUploadWrapper.style.display = 'block'; + fileURL.value = ''; }); - const fileUploadWrapper = document.querySelector('#form-upload-wrapper>button'); - fileUploadWrapper.style.display = 'block'; - const fileURLWrapper = document.querySelector('#form-upload-wrapper>div'); const fileURL = document.getElementById('form-url'); fileURL.addEventListener('keyup', () => { @@ -564,7 +575,10 @@ $privacy_exists = is_file($_SERVER['DOCUMENT_ROOT'] . '/static/PRIVACY.txt'); const formFile = document.getElementById('form-file'); formFile.style.display = 'none'; formFile.addEventListener("change", (e) => { - files = e.target.files; + files = []; + for (const file of e.target.files) { + files.push(file); + } showFile(files); }); @@ -575,7 +589,7 @@ $privacy_exists = is_file($_SERVER['DOCUMENT_ROOT'] . '/static/PRIVACY.txt'); // --------------------- fileUploadWrapper.addEventListener("drop", (e) => { e.preventDefault(); - files.clear(); + files = []; if (e.dataTransfer.items) { for (const item of e.dataTransfer.items) { if (item.kind === "file") { -- cgit v1.2.3