X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/5aa13410812d3fc4b35c039bdc3f0a2edc5185a1..24f677a3979ba3f1bdfe420c03ad5e3f8b0398c2:/src/api/handlers.py diff --git a/src/api/handlers.py b/src/api/handlers.py index f3cc4a7ce..7872a1034 100644 --- a/src/api/handlers.py +++ b/src/api/handlers.py @@ -27,7 +27,6 @@ from social.utils import likes from stats.utils import piwik_track from wolnelektury.utils import re_escape -from . import emitters # Register our emitters API_BASE = WL_BASE = MEDIA_BASE = lazy( lambda: u'https://' + Site.objects.get_current().domain, unicode)() @@ -320,18 +319,6 @@ class BooksHandler(BookDetailHandler): return rc.NOT_FOUND -class EpubHandler(BookDetailHandler): - def read(self, request, slug): - if not user_is_subscribed(request.user): - return rc.FORBIDDEN - try: - book = Book.objects.get(slug=slug) - except Book.DoesNotExist: - return rc.NOT_FOUND - response = HttpResponse(book.get_media('epub')) - return response - - class EBooksHandler(AnonymousBooksHandler): fields = ('author', 'href', 'title', 'cover') + tuple(Book.ebook_formats) + ('slug',) @@ -670,41 +657,6 @@ class PictureHandler(BaseHandler): return rc.NOT_FOUND -class UserDataHandler(BaseHandler): - model = BookUserData - fields = ('state', 'username', 'premium') - allowed_methods = ('GET', 'POST') - - def read(self, request, slug=None): - if not request.user.is_authenticated(): - return rc.FORBIDDEN - if slug is None: - return {'username': request.user.username, 'premium': user_is_subscribed(request.user)} - try: - book = Book.objects.get(slug=slug) - except Book.DoesNotExist: - return rc.NOT_FOUND - try: - data = BookUserData.objects.get(book=book, user=request.user) - except BookUserData.DoesNotExist: - return {'state': 'not_started'} - return data - - def create(self, request, slug, state): - try: - book = Book.objects.get(slug=slug) - except Book.DoesNotExist: - return rc.NOT_FOUND - if not request.user.is_authenticated(): - return rc.FORBIDDEN - if state not in ('reading', 'complete'): - return rc.NOT_FOUND - data, created = BookUserData.objects.get_or_create(book=book, user=request.user) - data.state = state - data.save() - return data - - class UserShelfHandler(BookDetailHandler): fields = book_list_fields + ['liked']