Spaces:
Running
Running
Upload js_quene.js
Browse files- js_quene.js +43 -0
js_quene.js
ADDED
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
const queneDropZone = document.getElementById('queneDropZone');
|
2 |
+
// const nextFileButton = document.getElementById('nextFileButton');
|
3 |
+
// const queneStatus = document.getElementById('queneStatus');
|
4 |
+
|
5 |
+
let droppedFiles = [];
|
6 |
+
let currentIndex = 0;
|
7 |
+
|
8 |
+
['dragenter', 'dragover', 'dragleave', 'drop'].forEach(eventName => {
|
9 |
+
queneDropZone.addEventListener(eventName, e => {
|
10 |
+
e.preventDefault();
|
11 |
+
e.stopPropagation();
|
12 |
+
}, false);
|
13 |
+
});
|
14 |
+
|
15 |
+
queneDropZone.addEventListener('drop', (e) => {
|
16 |
+
|
17 |
+
const newFiles = Array.from(e.dataTransfer.files);
|
18 |
+
droppedFiles.push(...newFiles); // Add new files to the queue
|
19 |
+
|
20 |
+
queneStatus.textContent = `Added ${newFiles.length} new file(s). Total in queue: ${droppedFiles.length}. Click "Show Next File" to view.`;
|
21 |
+
});
|
22 |
+
|
23 |
+
// Show next file in the queue
|
24 |
+
nextFileButton.addEventListener('click', () => {
|
25 |
+
if (droppedFiles.length === 0) {
|
26 |
+
queneStatus.textContent = 'No files loaded. Drop some files first.';
|
27 |
+
return;
|
28 |
+
}
|
29 |
+
|
30 |
+
if (currentIndex >= droppedFiles.length) {
|
31 |
+
queneStatus.textContent = 'No more files. Queue is empty. Counter reset.';
|
32 |
+
currentIndex = 0;
|
33 |
+
droppedFiles = [];
|
34 |
+
return;
|
35 |
+
}
|
36 |
+
|
37 |
+
const file = droppedFiles[currentIndex];
|
38 |
+
queneDropZone.innerHTML = `<strong>File ${currentIndex + 1} of ${droppedFiles.length}</strong><br>
|
39 |
+
Name: ${file.name}<br>
|
40 |
+
Size: ${Math.round(file.size / 1024)} KB<br>
|
41 |
+
Type: ${file.type || 'Unknown'}`;
|
42 |
+
currentIndex++;
|
43 |
+
});
|