cleanup tree after selecting something
This commit is contained in:
parent
1a6fed0f51
commit
9a0586ea0a
@ -36,7 +36,7 @@
|
||||
.scrollable {
|
||||
|
||||
overflow: scroll;
|
||||
height: 650px;
|
||||
max-height: 650px;
|
||||
}
|
||||
|
||||
.info {
|
||||
|
||||
@ -9,25 +9,22 @@ function add_file_tree_clickhanlder(side) {
|
||||
|
||||
var type = elem.classList.contains("folder") ? "folder" : "file";
|
||||
if(type=="file") {
|
||||
let path = cleanup_tree(elem);
|
||||
path.unshift(elem.textContent);
|
||||
let root_dir = document.getElementById(side + "_dir").value;
|
||||
path.push(root_dir);
|
||||
if( elem.textContent.endsWith('.mkv')) {
|
||||
let path = get_path_var(elem);
|
||||
path.unshift(elem.textContent);
|
||||
let root_dir = document.getElementById(side + "_dir").value;
|
||||
path.push(root_dir);
|
||||
fetchmkvdata(path,side);
|
||||
} else if ( elem.textContent.endsWith('.mp3') || elem.textContent.endsWith('.mp4')) {
|
||||
let path = get_path_var(elem);
|
||||
path.unshift(elem.textContent);
|
||||
let root_dir = document.getElementById(side + "_dir").value;
|
||||
path.push(root_dir);
|
||||
create_convert_button(path, side);
|
||||
}
|
||||
|
||||
}
|
||||
if (type == "folder") {
|
||||
var isexpanded = elem.dataset.isexpanded=="true";
|
||||
|
||||
if ( !isexpanded ) {
|
||||
|
||||
|
||||
let path = get_path_var(elem);
|
||||
let root_dir = document.getElementById(side + "_dir").value;
|
||||
path.push(root_dir);
|
||||
@ -35,6 +32,8 @@ function add_file_tree_clickhanlder(side) {
|
||||
fetchTable(elem.parentElement,path,side );
|
||||
fetchmkvdata(path.reverse(),side);
|
||||
|
||||
} else {
|
||||
cleanup_tree(elem);
|
||||
}
|
||||
|
||||
elem.dataset.isexpanded = !isexpanded;
|
||||
@ -49,7 +48,28 @@ function add_file_tree_clickhanlder(side) {
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function cleanup_tree(elem) {
|
||||
let path = Array();
|
||||
let parent_el = elem.parentElement;
|
||||
while ( !parent_el.id || !parent_el.id.startsWith("hierarchy")) {
|
||||
console.log(parent_el);
|
||||
path.push(parent_el.dataset.folder);
|
||||
parent_el = parent_el.parentElement;
|
||||
}
|
||||
|
||||
parent_el.innerHTML ="";
|
||||
for (let el of path.reverse()) {
|
||||
let next_node = create_folder(el);
|
||||
parent_el.appendChild(next_node);
|
||||
parent_el = next_node;
|
||||
}
|
||||
if (elem.classList.contains("file")) {
|
||||
parent_el.appendChild(elem);
|
||||
}
|
||||
return path;
|
||||
}
|
||||
|
||||
function get_path_var(elem) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user