summaryrefslogtreecommitdiff
path: root/Pages/Upload.razor
diff options
context:
space:
mode:
authorJake Mannens <jake@asger.xyz>2023-08-28 14:14:49 +1000
committerJake Mannens <jake@asger.xyz>2023-08-28 14:14:49 +1000
commit1052fe8d2ff8079798f48acc58e6f512d297c256 (patch)
tree86fe3e5b0b55a0652e0234497de5b98d4672686f /Pages/Upload.razor
parent5a1e7286a3cb2e0db74c58285a5a34fc7b11194f (diff)
Completed initial version of upload page
Diffstat (limited to 'Pages/Upload.razor')
-rw-r--r--Pages/Upload.razor44
1 files changed, 40 insertions, 4 deletions
diff --git a/Pages/Upload.razor b/Pages/Upload.razor
index a9a1667..d6f63ff 100644
--- a/Pages/Upload.razor
+++ b/Pages/Upload.razor
@@ -3,8 +3,44 @@
<link rel="stylesheet" href="@(nameof(HyperBooru)).styles.css"/>
<div id="dropzone">
- <p>Drag a file to upload it</p>
- <form id="upload" action="/media" method="post" enctype="multipart/form-data">
- <input type="file" id="myFile" name="filename" accept="image/*,video/*"/>
+ <p>Drag a file to upload it<br/>or click to select one or more file(s)</p>
+ <form id="uploadForm" action="/media" method="post" enctype="multipart/form-data">
+ <input type="file" id="fileUpload" name="fileUpload" accept="image/*,video/*" multiple/>
</form>
-</div> \ No newline at end of file
+</div>
+
+<script>
+ var dropzone = document.getElementById('dropzone');
+ var uploadForm = document.getElementById('uploadForm');
+ var fileUpload = document.getElementById('fileUpload');
+
+ dropzone.ondragover = function (e) {
+ e.preventDefault();
+ }
+
+ dropzone.ondragenter = function(e) {
+ e.preventDefault();
+ dropzone.classList.toggle('hover', true);
+ }
+
+ dropzone.ondragleave = function(e) {
+ e.preventDefault();
+ dropzone.classList.toggle('hover', false);
+ }
+
+ dropzone.ondrop = function(e) {
+ e.preventDefault();
+ fileUpload.files = e.dataTransfer.files;
+ console.log('lmao');
+ uploadForm.submit();
+ }
+
+ dropzone.onclick = function(e) {
+ fileUpload.click();
+ }
+
+ fileUpload.onchange = function(e) {
+ console.log('epic');
+ uploadForm.submit();
+ }
+</script>