'cover_thumb', 'cover',
'isbn_pdf', 'isbn_epub', 'isbn_mobi',
'abstract',
- 'has_mp3_file',
+ 'has_mp3_file', 'has_sync_file',
]
class BookSerializer11Labs(serializers.ModelSerializer):
),
path('books/<slug:slug>.json',
views.BookJsonView.as_view()),
+ path('books/<slug:slug>/sync/',
+ views.BookSyncView.as_view()
+ ),
path('suggested-tags/',
piwik_track_view(views.SuggestedTags.as_view()),
serializer_class = serializers.BookSerializer2
+class BookSyncView(RetrieveAPIView):
+ queryset = Book.objects.all()
+ lookup_field = 'slug'
+
+ def retrieve(self, request, *args, **kwargs):
+ instance = self.get_object()
+ return Response(json.loads(instance.get_sync()))
+
+
@vary_on_auth # Because of embargo links.
class EbookList(BookList):
serializer_class = serializers.EbookSerializer
from .tojson import conv
from lxml import etree
from rest_framework.views import APIView
+
class BookJsonView(APIView):
def get(self, request, slug):
book = get_object_or_404(Book, slug=slug)