1 # -*- coding: utf-8 -*-
3 from catalogue.models import Book
4 from librarian import DocProvider
5 from django.http import HttpResponse
8 class RedakcjaDocProvider(DocProvider):
9 """Used for getting books' children."""
11 def __init__(self, publishable):
12 self.publishable = publishable
14 def by_slug(self, slug):
15 return BytesIO(Book.objects.get(dc_slug=slug
16 ).materialize(publishable=self.publishable
20 def serve_file(file_path, name, mime_type):
21 def read_chunks(f, size=8192):
27 response = HttpResponse(content_type=mime_type)
28 response['Content-Disposition'] = 'attachment; filename=%s' % name
29 with open(file_path) as f:
30 for chunk in read_chunks(f):