* added django-sri and updated templates.

* updated requirements.txt

* datatables with integrity

* fixed recent comics not showing when related comicstatus doesnt exist.

* fixed classifications on recent comcis.

* fixed classifications on recent comcis.

* fixed classifications on recent comcis.

* fixed classifications on recent comcis.

* fixed classifications on recent comcis.

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fixes for pymupdy 1.18.13

* fix for pdf's not switching properly

* fix for comics's not switching properly

* fix for comics's not switching properly
This commit is contained in:
2021-05-16 10:54:14 +01:00
committed by GitHub
parent d5c53cd889
commit cd58379326
20 changed files with 304 additions and 273 deletions

View File

@@ -4,7 +4,7 @@ import uuid
from django.contrib.auth import authenticate, login
from django.contrib.auth.decorators import login_required, user_passes_test
from django.contrib.auth.models import User
from django.db.models import Max, Count, F
from django.db.models import Max, Count, F, Case, When, BooleanField, PositiveSmallIntegerField
from django.db.transaction import atomic
from django.http import HttpResponse, FileResponse
from django.shortcuts import get_object_or_404, redirect, render
@@ -135,11 +135,18 @@ def recent_comics_json(request):
else:
order_string += "date_added"
comics = comics.order_by(order_string)
comics = comics.filter(comicstatus__user=request.user).annotate(
unread=F('comicstatus__unread'),
finished=F('comicstatus__finished'),
last_read_page=F('comicstatus__last_read_page')
comics = comics.annotate(
unread=Case(When(comicstatus__user=request.user, then='comicstatus__unread')),
finished=Case(When(comicstatus__user=request.user, then='comicstatus__finished')),
last_read_page=Case(When(comicstatus__user=request.user, then='comicstatus__last_read_page')),
classification=Case(
When(directory__isnull=True, then=Directory.Classification.C_18),
default=F('directory__classification'),
output_field=PositiveSmallIntegerField(choices=Directory.Classification.choices)
)
)
comics = comics.filter(classification__lte=request.user.usermisc.allowed_to_read)
response_data["recordsFiltered"] = comics.count()
response_data["data"] = list()
for book in comics[start:end]:
@@ -292,6 +299,7 @@ def read_comic(request, comic_selector):
status, _ = ComicStatus.objects.get_or_create(comic=book, user=request.user)
title = "CBWebReader - " + book.file_name
print(book.nav(request.user))
context = {
"book": book,
"pages": pages,