Report-Generator / templates /pdfjs_viewer.html
t
feat: major UX overhaul for PDF viewer, drive browser, and NeetPrep
693a1e9
<!DOCTYPE html>
<html>
<head>
<title>{{ pdf_title }}</title>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { height: 100%; background: #1a1a1a; }
#adobe-dc-view { height: 100%; width: 100%; }
</style>
</head>
<body>
<div id="adobe-dc-view"></div>
<script src="https://acrobatservices.adobe.com/view-sdk/viewer.js"></script>
<script type="text/javascript">
document.addEventListener("adobe_dc_view_sdk.ready", function() {
var adobeDCView = new AdobeDC.View({
clientId: "13f2edf18b654344bbc7e4d7b2583d4a",
divId: "adobe-dc-view"
});
// Fetch PDF and pass as ArrayBuffer
fetch("{{ pdf_url }}", { credentials: 'include' })
.then(response => response.arrayBuffer())
.then(buffer => {
adobeDCView.previewFile({
content: { promise: Promise.resolve(buffer) },
metaData: { fileName: "{{ pdf_title }}" }
}, {
embedMode: "FULL_WINDOW",
showAnnotationTools: false,
showDownloadPDF: true,
showPrintPDF: true
});
})
.catch(err => {
console.error("Fetch error:", err);
// Fallback to URL
adobeDCView.previewFile({
content: { location: { url: window.location.origin + "{{ pdf_url }}" } },
metaData: { fileName: "{{ pdf_title }}" }
}, { showAnnotationTools: false });
});
});
</script>
</body>
</html>