fnp
/
redakcja.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
missing tmpl
[redakcja.git]
/
src
/
cover
/
views.py
diff --git
a/src/cover/views.py
b/src/cover/views.py
index
3f2c46f
..
bfc3ee3
100644
(file)
--- a/
src/cover/views.py
+++ b/
src/cover/views.py
@@
-1,5
+1,3
@@
-# -*- coding: utf-8 -*-
-#
# This file is part of FNP-Redakcja, licensed under GNU Affero GPLv3 or later.
# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
#
# This file is part of FNP-Redakcja, licensed under GNU Affero GPLv3 or later.
# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
#
@@
-10,8
+8,8
@@
from django.http import HttpResponse, HttpResponseRedirect, Http404
from django.shortcuts import get_object_or_404, render
from django.views.decorators.csrf import csrf_exempt
from django.views.decorators.http import require_POST
from django.shortcuts import get_object_or_404, render
from django.views.decorators.csrf import csrf_exempt
from django.views.decorators.http import require_POST
-from
catalogue
.helpers import active_tab
-from
catalogue
.models import Chunk
+from
documents
.helpers import active_tab
+from
documents
.models import Chunk
from cover.models import Image
from cover import forms
from cover.models import Image
from cover import forms
@@
-37,17
+35,30
@@
def preview(request, book, chunk=None, rev=None):
else:
revision = chunk.publishable()
if revision is None:
else:
revision = chunk.publishable()
if revision is None:
- r
aise Http404
+ r
evision = chunk.head
xml = revision.materialize().encode('utf-8')
try:
info = BookInfo.from_bytes(xml)
except:
return HttpResponseRedirect(os.path.join(settings.STATIC_URL, "img/sample_cover.png"))
xml = revision.materialize().encode('utf-8')
try:
info = BookInfo.from_bytes(xml)
except:
return HttpResponseRedirect(os.path.join(settings.STATIC_URL, "img/sample_cover.png"))
- cover = make_cover(info)
+ width = request.GET.get('width')
+ width = int(width) if width else None
+ height=request.GET.get('height')
+ height = int(height) if height else None
+ cover = make_cover(info, width=width, height=height)
+ #cover = make_cover(info)
response = HttpResponse(content_type=cover.mime_type())
response = HttpResponse(content_type=cover.mime_type())
- img = cover.image().resize(PREVIEW_SIZE, Image.ANTIALIAS)
+ if height or width:
+ size = (width, height)
+ else:
+ size = PREVIEW_SIZE
+ img = cover.image().resize(size, Image.ANTIALIAS)
img.save(response, cover.format)
img.save(response, cover.format)
+
+ if 'download' in request.GET:
+ response['Content-Disposition'] = 'attachment; filename=%s.jpg' % chunk.book.slug
+
return response
return response