X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/1501fe79a5abe6fc214309ade4ceb85f6bfd0328..e3ab2edd07579ddcee8128c362b202caa03a4578:/src/catalogue/api/serializers.py diff --git a/src/catalogue/api/serializers.py b/src/catalogue/api/serializers.py index 60e52a052..1608b0f0a 100644 --- a/src/catalogue/api/serializers.py +++ b/src/catalogue/api/serializers.py @@ -156,6 +156,8 @@ class BookSerializer2(serializers.ModelSerializer): 'epub', 'mobi', 'pdf', 'html', 'txt', 'fb2', 'xml', 'cover_thumb', 'cover', 'isbn_pdf', 'isbn_epub', 'isbn_mobi', + 'abstract', + 'has_mp3_file', ] class BookSerializer11Labs(serializers.ModelSerializer): @@ -189,6 +191,17 @@ class BookSerializer11Labs(serializers.ModelSerializer): ] +class MediaSerializer2(MediaSerializer): + size = serializers.SerializerMethodField() + + class Meta: + model = BookMedia + fields = ['url', 'director', 'type', 'name', 'part_name', 'artist', 'duration', 'size'] + + def get_size(self, obj): + return obj.file.size + + class BookSerializer(LegacyMixin, serializers.ModelSerializer): author = serializers.CharField(source='author_unicode') kind = serializers.CharField(source='kind_unicode') @@ -352,6 +365,15 @@ class FragmentDetailSerializer(serializers.ModelSerializer): fields = ['book', 'anchor', 'text', 'url', 'themes'] +class FragmentSerializer2(serializers.ModelSerializer): + url = AbsoluteURLField() + html = serializers.CharField(source='text') + + class Meta: + model = Fragment + fields = ['anchor', 'html', 'url'] + + class FilterTagSerializer(serializers.ModelSerializer): class Meta: model = Tag