base_url = 'http://localhost:8080'; //'http://192.168.178.98:8080'; file_path = []; window.addEventListener('load', function () { if (sessionStorage.getItem("authorization") !== null) { console.log('Logged in'); create_base_view(); create_logout_view(); create_tree_data(''); path_changed(); } else { console.log('Not logged in'); create_login_view(); } }); window.addEventListener('popstate', function () { path_changed(); }); function path_changed() { let curr_dir = get_curr_path(); // TODO show opened directory in tree-view // let tree_elem = document.getElementById(curr_dir.replaceAll('/', '-')); // console.log(curr_dir.replaceAll('/', '-')) // if(tree_elem !== undefined && tree_elem !== null) { // tree_elem.classList.toggle('folder-open'); // // if (tree_elem.parentElement.querySelector(".nested") !== null) { // tree_elem.parentElement.querySelector(".nested").classList.toggle("active"); // } // } httpGetAsync(base_url + curr_dir, null, show_files); } function login() { let username = document.getElementById("username").value; let password = document.getElementById("password").value; httpPostAsync(base_url + '/login', 'username=' + username + '&password=' + password, function (response, code) { if (code === 200) { sessionStorage.setItem("authorization", btoa(username + ':' + JSON.parse(response)['token'])); create_base_view(); create_logout_view(); create_tree_data(''); path_changed(); } else if (code === 401) { create_error_view("Wrong username or password!"); } else { try_to_parse_error(response); } }) } function show_files(response, code) { if (code === 200) { // OK create_main_view(JSON.parse(response)); } else if (code === 401) { // Not logged in sessionStorage.removeItem('authorization'); create_error_view(`Your session is expired. Log in again`); } else { // Error try_to_parse_error(response); } } function one_dir_back() { let curr_dir = get_curr_path(); if (curr_dir !== null) { let dir = curr_dir.split('/'); dir = dir.slice(0, dir.length - 1); curr_dir = dir.join('/'); return curr_dir; } return ''; } function save_file(filename, content) { remove_modal(); httpPostAsync(base_url + filename, 'content=' + btoa(content), function (response, code) { if (code === 200) { create_success_view("Saved file successfully"); } else { try_to_parse_error(response); } }); } function add_folder() { let content = ``; let footer = ` `; create_modal('Create Folder', content, footer); } function add_file() { let content = `