File manager
This commit is contained in:
@@ -84,6 +84,16 @@ function displayState(state) {
|
||||
document.getElementById("voltage").innerHTML = state['voltage']+' mV';
|
||||
document.getElementById("heap").innerHTML = state['heap']+' bytes free heap';
|
||||
document.getElementById("uid").innerHTML = 'Last NFC ID: '+state['uid'];
|
||||
|
||||
/* ==== Autofill convenience fields ==== */
|
||||
if (state['filepath']) {
|
||||
document.getElementById('moveFrom').value = state['filepath'];
|
||||
document.getElementById('deleteFile').value = state['filepath'];
|
||||
document.getElementById('song').value = state['filepath'];
|
||||
}
|
||||
if (state['uid']) {
|
||||
document.getElementById('rfid').value = state['uid'];
|
||||
}
|
||||
var elements = document.getElementsByClassName('play-button');
|
||||
var btn = elements[0];
|
||||
|
||||
@@ -260,3 +270,60 @@ function resetUploadForm() {
|
||||
// Clear file input
|
||||
document.getElementById('uploadFile').value = '';
|
||||
}
|
||||
|
||||
/* ================= File Manager Functions ================= */
|
||||
|
||||
function toggleFileManager() {
|
||||
var fm = document.getElementById('fileManager');
|
||||
if (fm.style.display === 'none' || fm.style.display === '') {
|
||||
fm.style.display = 'block';
|
||||
} else {
|
||||
fm.style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
function moveFile() {
|
||||
var from = document.getElementById('moveFrom').value.trim();
|
||||
var to = document.getElementById('moveTo').value.trim();
|
||||
if (!from || !to) {
|
||||
alert('Please provide both source and destination paths.');
|
||||
return;
|
||||
}
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('GET', '/move_file?from=' + encodeURIComponent(from) + '&to=' + encodeURIComponent(to), true);
|
||||
xhr.onreadystatechange = function() {
|
||||
if (xhr.readyState === 4) {
|
||||
if (xhr.status >= 200 && xhr.status < 300) {
|
||||
alert('File moved successfully.');
|
||||
location.reload();
|
||||
} else {
|
||||
alert('Move failed: ' + (xhr.responseText || 'Unknown error'));
|
||||
}
|
||||
}
|
||||
};
|
||||
xhr.send();
|
||||
}
|
||||
|
||||
function deleteFile() {
|
||||
var filename = document.getElementById('deleteFile').value.trim();
|
||||
if (!filename) {
|
||||
alert('Please provide filename to delete.');
|
||||
return;
|
||||
}
|
||||
if (!confirm('Are you sure you want to delete ' + filename + '?')) {
|
||||
return;
|
||||
}
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('GET', '/delete_file?filename=' + encodeURIComponent(filename), true);
|
||||
xhr.onreadystatechange = function() {
|
||||
if (xhr.readyState === 4) {
|
||||
if (xhr.status >= 200 && xhr.status < 300) {
|
||||
alert('File deleted successfully.');
|
||||
location.reload();
|
||||
} else {
|
||||
alert('Delete failed: ' + (xhr.responseText || 'Unknown error'));
|
||||
}
|
||||
}
|
||||
};
|
||||
xhr.send();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user