diff --git a/assets/index.js b/assets/index.js index 88dd4bd..fe33786 100644 --- a/assets/index.js +++ b/assets/index.js @@ -106,6 +106,15 @@ let $logoutBtn; */ let $userName; +// manage unload event to prevent leaving with uploads in progress +const beforeUnloadHandler = (event) => { + if (Uploader.queues.length > 0 || Uploader.runnings > 0) { + event.preventDefault(); + event.returnValue = ''; + return ''; // for some browsers + } +}; + // Produce table when window loads window.addEventListener("DOMContentLoaded", async () => { const $indexData = document.getElementById('index-data'); @@ -131,6 +140,8 @@ async function ready() { $logoutBtn = document.querySelector(".logout-btn"); $userName = document.querySelector(".user-name"); + window.addEventListener('beforeunload', beforeUnloadHandler); + addBreadcrumb(DATA.href, DATA.uri_prefix); if (DATA.kind === "Index") {