added pdf.js to add pdf support.

This commit is contained in:
ajurna
2020-05-21 12:44:57 +01:00
parent be32796bea
commit f4411163f9
9 changed files with 437 additions and 33 deletions

View File

@@ -293,6 +293,13 @@ def settings_page(request):
@login_required
def read_comic(request, comic_selector):
selector = uuid.UUID(bytes=urlsafe_base64_decode(comic_selector))
try:
book = ComicBook.objects.get(selector=selector)
except ComicBook.DoesNotExist:
Directory.objects.get(selector=selector)
return redirect('comic_list', directory_selector=comic_selector)
except Directory.DoesNotExist:
return HttpResponse(status=404)
book = get_object_or_404(ComicBook, selector=selector)
pages = ComicPage.objects.filter(Comic=book)
@@ -308,7 +315,11 @@ def read_comic(request, comic_selector):
"menu": Menu(request.user),
"title": title,
}
return render(request, "comic/read_comic.html", context)
if book.file_name.lower().endswith('pdf'):
context['status'].last_read_page += 1
return render(request, "comic/read_comic_pdf.html", context)
else:
return render(request, "comic/read_comic.html", context)
@login_required
@@ -335,6 +346,13 @@ def get_image(_, comic_selector, page):
return FileResponse(img, content_type=content)
@login_required
def get_pdf(_, comic_selector):
selector = uuid.UUID(bytes=urlsafe_base64_decode(comic_selector))
book = ComicBook.objects.get(selector=selector)
return FileResponse(open(book.get_pdf(), 'rb'), content_type='application/pdf')
def initial_setup(request):
if User.objects.all().exists():
return redirect("/comic/")