73 lines
1.8 KiB
JavaScript
73 lines
1.8 KiB
JavaScript
function fetchTable(folder_container, path, side) {
|
|
let fetcher = "file_lister.py";
|
|
|
|
console.log(path);
|
|
let url = '/script/' + fetcher+ '?'
|
|
+ path
|
|
.reverse()
|
|
.map((par) => 'path=' + encodeURIComponent(par))
|
|
.join('&');
|
|
let folder_el = folder_container.children[0];
|
|
|
|
folder_container.innerHTML = "";
|
|
folder_container.appendChild(folder_el);
|
|
|
|
fetch(url)
|
|
.then(response => response.json())
|
|
.then(data => {
|
|
localStorage.setItem(side,null)
|
|
data.forEach(el => {
|
|
if (el.isdir) { let gui_el = create_folder(el["name"]);
|
|
gui_el.classList.add(side+"-align");
|
|
for (let x of gui_el.children) {
|
|
x.classList.add(side+"-align")
|
|
}
|
|
folder_container.appendChild(gui_el)
|
|
} else {
|
|
if ( el["name"].endsWith(".mkv") ) {
|
|
localStorage.setItem(side, JSON.stringify( [path, "folder"]))
|
|
}
|
|
let gui_el = create_file(el["name"]);
|
|
gui_el.classList.add(side+"-align");
|
|
folder_container.appendChild(gui_el)
|
|
}
|
|
});
|
|
|
|
handle_merge_button_changes()
|
|
})
|
|
.catch(error => console.error('Error fetching table data:', error));
|
|
}
|
|
|
|
function create_folder (name) {
|
|
let folder_container = document.createElement("div");
|
|
folder_container.classList.add("foldercontainer");
|
|
folder_container.dataset.folder = name;
|
|
folder_container.appendChild(create_folder_entry(name));
|
|
|
|
return folder_container;
|
|
}
|
|
|
|
function create_folder_entry(name) {
|
|
let folder = create_entry_el("folder", name);
|
|
folder.dataset.isexpanded = "false";
|
|
return folder;
|
|
}
|
|
|
|
function create_entry_el(type, name) {
|
|
let entry = document.createElement("span");
|
|
entry.innerHTML = name;
|
|
entry.classList.add(type);
|
|
return entry;
|
|
}
|
|
|
|
function create_file (name) {
|
|
|
|
return create_entry_el("file", name);
|
|
}
|
|
|
|
/*window.onload = function() {
|
|
let foo = "Bar";
|
|
fetchTable('test.py', 'table-container', foo);
|
|
}
|
|
*/
|