You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.4 KiB
47 lines
1.4 KiB
|
|
console.log("hello my name is backblaze-session-keepalive"); |
|
|
|
|
|
let timeout; |
|
const resetTimeout = () => { |
|
//console.log("backblaze-session-keepalive: resetTimeout"); |
|
if(timeout) { |
|
clearTimeout(timeout); |
|
} |
|
timeout = setTimeout(async () => { |
|
console.log("backblaze-session-keepalive: step1"); |
|
await browser.storage.local.set({"returnToURL": String(window.location)}); |
|
const navLinks = document.querySelectorAll(".left_nav_links a"); |
|
const bucketsButton = Array.from(navLinks).filter(x => x.textContent == "Buckets")[0]; |
|
if(bucketsButton) { |
|
bucketsButton.click(); |
|
} |
|
}, 4*60*1000); |
|
}; |
|
|
|
|
|
const onPageLoaded = async () => { |
|
const returnToURL = (await browser.storage.local.get("returnToURL")).returnToURL; |
|
const returnToURL2 = (await browser.storage.local.get("returnToURL2")).returnToURL2; |
|
|
|
const navigateFilesButton = document.querySelectorAll('.storage-buckets .button_restore')[0]; |
|
if(navigateFilesButton && returnToURL) { |
|
console.log("backblaze-session-keepalive: step2"); |
|
await browser.storage.local.set({"returnToURL": null, "returnToURL2": returnToURL}); |
|
navigateFilesButton.click(); |
|
} |
|
if(returnToURL2) { |
|
console.log("backblaze-session-keepalive: step3"); |
|
await browser.storage.local.set({"returnToURL": null, "returnToURL2": null}); |
|
window.location = returnToURL2; |
|
} |
|
|
|
window.addEventListener("mousemove", () => { |
|
resetTimeout(); |
|
}); |
|
|
|
resetTimeout(); |
|
}; |
|
|
|
|
|
onPageLoaded(); |