Reader: allow loading files from URL parameter

Fixes #3
This commit is contained in:
John Factotum
2023-03-15 11:00:21 +08:00
parent c7a4f5ef46
commit 514cb81fe6
2 changed files with 10 additions and 1 deletions
+2 -1
View File
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<meta name="color-scheme" content="light dark">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Security-Policy" content="default-src 'self' blob:; script-src 'self'; style-src 'self' blob: 'unsafe-inline'; img-src 'self' blob: data:; connect-src 'self' blob: data:; frame-src blob: data:; object-src blob: data:; form-action 'none';">
<meta http-equiv="Content-Security-Policy" content="default-src 'self' blob:; script-src 'self'; style-src 'self' blob: 'unsafe-inline'; img-src 'self' blob: data:; connect-src 'self' blob: data: *; frame-src blob: data:; object-src blob: data:; form-action 'none';">
<title>E-Book Reader</title>
<style>
:root {
@@ -30,6 +30,7 @@ body {
align-items: center;
justify-content: center;
text-align: center;
visibility: hidden;
}
#drop-target h1 {
font-weight: 900;
+8
View File
@@ -320,3 +320,11 @@ dropTarget.addEventListener('dragover', dragOverHandler)
$('#file-input').addEventListener('change', e =>
open(e.target.files[0]).catch(e => console.error(e)))
$('#file-button').addEventListener('click', () => $('#file-input').click())
const params = new URLSearchParams(location.search)
const url = params.get('url')
if (url) fetch(url)
.then(res => res.blob())
.then(blob => open(new File([blob], new URL(url).pathname)))
.catch(e => console.error(e))
else dropTarget.style.visibility = 'visible'