aboutsummaryrefslogtreecommitdiffstats
path: root/accounts/views.py
diff options
context:
space:
mode:
authorAndrea Lepori <alepori@student.ethz.ch>2020-08-27 20:51:40 +0200
committerAndrea Lepori <alepori@student.ethz.ch>2020-08-27 20:51:40 +0200
commit3a24ed97b18c0843f7d989fbc5df91002a110955 (patch)
treee2b0db21fee9b0ddcf7af6f6ae5ddc9d3e215956 /accounts/views.py
parentcomment code, minor bug fixes (diff)
downloadscout-subs-3a24ed97b18c0843f7d989fbc5df91002a110955.tar.gz
scout-subs-3a24ed97b18c0843f7d989fbc5df91002a110955.zip
download images in jpeg, small improvements
Diffstat (limited to 'accounts/views.py')
-rw-r--r--accounts/views.py20
1 files changed, 16 insertions, 4 deletions
diff --git a/accounts/views.py b/accounts/views.py
index 50266b1..9b5884b 100644
--- a/accounts/views.py
+++ b/accounts/views.py
@@ -77,7 +77,13 @@ def personal(request):
if filename.rfind('.') != -1:
filename = filename[:filename.rfind('.')]
filename = filename + ".jpg"
- return FileResponse(medic.vac_certificate.file, as_attachment=True, filename=filename)
+
+ # encode in JPEG
+ im = Image.open(medic.vac_certificate.file)
+ im_io = BytesIO()
+ im.save(im_io, 'JPEG', quality=90)
+ im_io.seek(0)
+ return FileResponse(im_io, as_attachment=True, filename=filename)
if request.POST['action'] == "download_health":
if medic.health_care_certificate != None:
@@ -86,7 +92,13 @@ def personal(request):
if filename.rfind('.') != -1:
filename = filename[:filename.rfind('.')]
filename = filename + ".jpg"
- return FileResponse(medic.health_care_certificate.file, as_attachment=True, filename=filename)
+
+ # encode in JPEG
+ im = Image.open(medic.vac_certificate.file)
+ im_io = BytesIO()
+ im.save(im_io, 'JPEG', quality=90)
+ im_io.seek(0)
+ return FileResponse(im_io, as_attachment=True, filename=filename)
# set all attributes
request.user.first_name = request.POST["first_name"]
@@ -140,7 +152,7 @@ def personal(request):
im = Image.open(myfile)
im_io = BytesIO()
# compress image in WEBP
- im.save(im_io, 'WEBP', quality=50)
+ im.save(im_io, 'WEBP', quality=50, method=4)
medic.vac_certificate.save(
request.user.username+"_"+myfile.name, im_io)
medic.save()
@@ -154,7 +166,7 @@ def personal(request):
im = Image.open(myfile)
im_io = BytesIO()
# compress image in WEBP
- im.save(im_io, 'WEBP', quality=50)
+ im.save(im_io, 'WEBP', quality=50, method=4)
medic.health_care_certificate.save(
request.user.username+"_"+myfile.name, im_io)
medic.save()