aboutsummaryrefslogtreecommitdiff
path: root/src/main/resources/js
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/resources/js')
-rw-r--r--src/main/resources/js/files.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/main/resources/js/files.js b/src/main/resources/js/files.js
new file mode 100644
index 0000000..24140b0
--- /dev/null
+++ b/src/main/resources/js/files.js
@@ -0,0 +1,31 @@
+const drop = document.getElementById("drop");
+
+drop.addEventListener('dragover', e => {
+ e.stopPropagation();
+ e.preventDefault();
+ e.dataTransfer.dropEffect = 'copy';
+ drop.style.background = "rgba(12,99,250,0.3)";
+});
+
+drop.addEventListener('dragleave', e =>
+ drop.style.background = "white"
+);
+
+drop.addEventListener('drop', e => {
+ // TODO: Fix directory uploading
+ e.stopPropagation();
+ e.preventDefault();
+ drop.style.background = "white";
+ const files = e.dataTransfer.files;
+
+ for (let i = 0; i < files.length; i++) {
+ let request = new XMLHttpRequest();
+ let formData = new FormData();
+
+ drop.insertAdjacentHTML('beforeend', `<a class="filename" href="${files[i].name}">${files[i].name}</a><br><hr>`);
+
+ formData.append("file", files[i]);
+ request.open("POST", "/upload/" + path);
+ request.send(formData);
+ }
+});