X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/e08b9a9ce539493a925abad05a1a2900aa80583e..8a3484bca2af09fad4f912d50c5af5601274d295:/apps/catalogue/views.py?ds=sidebyside diff --git a/apps/catalogue/views.py b/apps/catalogue/views.py index 22aeffe8..3d1a47f3 100644 --- a/apps/catalogue/views.py +++ b/apps/catalogue/views.py @@ -204,18 +204,27 @@ def upload(request): }) -@never_cache -def book_xml(request, slug): - book = get_object_or_404(Book, slug=slug) +def serve_xml(request, book, slug): if not book.accessible(request): return HttpResponseForbidden("Not authorized.") - xml = book.materialize() - + xml = book.materialize(publishable=True) response = http.HttpResponse(xml, content_type='application/xml') response['Content-Disposition'] = 'attachment; filename=%s.xml' % slug return response +@never_cache +def book_xml(request, slug): + book = get_object_or_404(Book, slug=slug) + return serve_xml(request, book, slug) + + +@never_cache +def book_xml_dc(request, slug): + book = get_object_or_404(Book, dc_slug=slug) + return serve_xml(request, book, slug) + + @never_cache def book_txt(request, slug): book = get_object_or_404(Book, slug=slug) @@ -562,7 +571,7 @@ def publish(request, slug): except NotAuthorizedError: return http.HttpResponseRedirect(reverse('apiclient_oauth')) except BaseException, e: - return http.HttpResponse(e) + return http.HttpResponse(repr(e)) else: return http.HttpResponseRedirect(book.get_absolute_url()) @@ -587,8 +596,6 @@ def publish_image(request, slug): class GalleryView(UploadView): def get_object(self, request, slug): book = get_object_or_404(Book, slug=slug) - if not book.public and not request.user.has_perm('catalogue.change_book'): - return HttpResponseForbidden() if not book.gallery: raise Http404 return book