adjusted drop files & removed unused

This commit is contained in:
Ryan
2025-03-09 03:10:37 -04:00
committed by GitHub
parent 658372c6ce
commit eeeee1477e
5 changed files with 25 additions and 68 deletions

View File

@@ -35,20 +35,17 @@ export function updateFileActionButtons() {
const copyBtn = document.getElementById("copySelectedBtn"); const copyBtn = document.getElementById("copySelectedBtn");
const moveBtn = document.getElementById("moveSelectedBtn"); const moveBtn = document.getElementById("moveSelectedBtn");
const deleteBtn = document.getElementById("deleteSelectedBtn"); const deleteBtn = document.getElementById("deleteSelectedBtn");
const folderDropdown = document.getElementById("copyMoveFolderSelect");
// Hide the buttons and dropdown if no files exist. // Hide the buttons and dropdown if no files exist.
if (fileCheckboxes.length === 0) { if (fileCheckboxes.length === 0) {
copyBtn.style.display = "none"; copyBtn.style.display = "none";
moveBtn.style.display = "none"; moveBtn.style.display = "none";
deleteBtn.style.display = "none"; deleteBtn.style.display = "none";
folderDropdown.style.display = "none";
} else { } else {
// Otherwise, show the buttons and dropdown. // Otherwise, show the buttons and dropdown.
copyBtn.style.display = "inline-block"; copyBtn.style.display = "inline-block";
moveBtn.style.display = "inline-block"; moveBtn.style.display = "inline-block";
deleteBtn.style.display = "inline-block"; deleteBtn.style.display = "inline-block";
folderDropdown.style.display = "none";
// Enable the buttons if at least one file is selected; otherwise disable. // Enable the buttons if at least one file is selected; otherwise disable.
if (selectedCheckboxes.length > 0) { if (selectedCheckboxes.length > 0) {

View File

@@ -241,7 +241,6 @@ document.getElementById("submitRenameFolder").addEventListener("click", function
showToast("Folder renamed successfully!"); showToast("Folder renamed successfully!");
window.currentFolder = newFolderName; window.currentFolder = newFolderName;
loadFolderList(newFolderName); loadFolderList(newFolderName);
loadCopyMoveFolderList();
} else { } else {
showToast("Error: " + (data.error || "Could not rename folder")); showToast("Error: " + (data.error || "Could not rename folder"));
} }
@@ -288,7 +287,6 @@ document.getElementById("confirmDeleteFolder").addEventListener("click", functio
window.currentFolder = "root"; window.currentFolder = "root";
} }
loadFolderList("root"); loadFolderList("root");
loadCopyMoveFolderList();
} else { } else {
showToast("Error: " + (data.error || "Could not delete folder")); showToast("Error: " + (data.error || "Could not delete folder"));
} }
@@ -336,7 +334,6 @@ document.getElementById("submitCreateFolder").addEventListener("click", function
showToast("Folder created successfully!"); showToast("Folder created successfully!");
window.currentFolder = fullFolderName; window.currentFolder = fullFolderName;
loadFolderList(fullFolderName); loadFolderList(fullFolderName);
loadCopyMoveFolderList();
} else { } else {
showToast("Error: " + (data.error || "Could not create folder")); showToast("Error: " + (data.error || "Could not create folder"));
} }
@@ -349,33 +346,3 @@ document.getElementById("submitCreateFolder").addEventListener("click", function
document.getElementById("createFolderModal").style.display = "none"; document.getElementById("createFolderModal").style.display = "none";
}); });
}); });
// For copy/move folder dropdown.
export async function loadCopyMoveFolderList() {
try {
const response = await fetch('getFolderList.php');
const folders = await response.json();
if (!Array.isArray(folders)) {
console.error("Folder list response is not an array:", folders);
return;
}
const folderSelect = document.getElementById('copyMoveFolderSelect').style.display = "none";
folderSelect.innerHTML = '';
const rootOption = document.createElement('option');
rootOption.value = 'root';
rootOption.textContent = '(Root)';
folderSelect.appendChild(rootOption);
if (Array.isArray(folders) && folders.length > 0) {
folders.forEach(folder => {
const option = document.createElement('option');
option.value = folder;
option.textContent = formatFolderName(folder);
folderSelect.appendChild(option);
});
}
} catch (error) {
console.error('Error loading folder list:', error);
}
}

View File

@@ -53,16 +53,21 @@
<!-- Main Operations: Upload and Folder Management --> <!-- Main Operations: Upload and Folder Management -->
<div id="mainOperations" style="display: none;"> <div id="mainOperations" style="display: none;">
<div class="row" id="uploadFolderRow">
<div class="row align-items-stretch" id="uploadFolderRow">
<!-- Upload Card: 60% width --> <!-- Upload Card: 60% width -->
<div class="col-md-7 d-flex"> <div class="col-md-7 d-flex">
<div class="card flex-fill"> <div class="card flex-fill">
<div class="card-header">Upload Files</div> <div class="card-header">Upload Files</div>
<div class="card-body"> <!-- Make card-body a flex container in column direction -->
<form id="uploadFileForm" method="post" enctype="multipart/form-data"> <div class="card-body d-flex flex-column">
<div class="form-group"> <form id="uploadFileForm" method="post" enctype="multipart/form-data" class="d-flex flex-column"
<div id="uploadDropArea" style="height: 100%;">
style="border:2px dashed #ccc; padding:20px; text-align:center; cursor:pointer;"> <!-- Make the form-group container flex-grow so it fills available space -->
<div class="form-group flex-grow-1" style="margin-bottom: 1rem;">
<!-- Set drop area to grow to fill its parent -->
<div id="uploadDropArea" style="border:2px dashed #ccc; padding:20px; cursor:pointer; height: 100%;
display: flex; flex-direction: column; justify-content: center; align-items: center;">
<span>Drop files here or click 'Choose files'</span> <span>Drop files here or click 'Choose files'</span>
<br> <br>
<input type="file" id="file" name="file[]" class="form-control-file" multiple required <input type="file" id="file" name="file[]" class="form-control-file" multiple required
@@ -135,12 +140,17 @@
border-radius:4px; border-radius:4px;
padding:10px; padding:10px;
"> ">
<ul style="margin: 0; padding-left:20px;"> <details style="margin-top:5px; font-size:12px; color:#555;">
<li>To view files in a folder, click on the folder name in the tree.</li> <summary style="cursor:pointer; list-style: none;">Folder Navigation & Management Help Info <i
<li>To create a subfolder, select a folder from the tree above and click "Create Folder".</li> class="material-icons" style="vertical-align: middle;">info</i></summary>
<li>To rename or delete a folder, first select it from the tree, then click "Rename Folder" or "Delete <ul style="margin: 0; padding-left:20px;">
Folder" respectively.</li> <li>To view files in a folder, click on the folder name in the tree.</li>
</ul> <li>Above [-] expands and [+] collapses a folder in the tree.</li>
<li>To create a subfolder, select a folder from the tree above and click "Create Folder".</li>
<li>To rename or delete a folder, first select it from the tree, then click "Rename Folder" or
"Delete Folder" respectively.</li>
</ul>
</details>
</div> </div>
</div> </div>
</div> </div>
@@ -189,7 +199,6 @@
</div> </div>
</div> </div>
</div> </div>
<select id="copyMoveFolderSelect" style="display: none;"></select>
</div> </div>
<div id="fileList"></div> <div id="fileList"></div>
</div> </div>

View File

@@ -17,7 +17,6 @@ import {
} from './fileManager.js'; } from './fileManager.js';
import { import {
loadFolderTree, loadFolderTree,
loadCopyMoveFolderList,
loadFolderList loadFolderList
} from './folderManager.js'; } from './folderManager.js';
import { initUpload } from './upload.js'; import { initUpload } from './upload.js';

View File

@@ -246,21 +246,6 @@ header {
opacity: 0.9; opacity: 0.9;
} }
/* File list action buttons (for Delete, Copy, Move) */
.file-list-actions button {
background-color: #2196F3;
color: white;
border: none;
padding: 8px 16px;
border-radius: 4px;
cursor: pointer;
white-space: nowrap;
}
.file-list-actions button:hover {
background-color: #1976D2;
}
#deleteSelectedBtn { #deleteSelectedBtn {
background-color: #f44336; background-color: #f44336;
/* Material red */ /* Material red */