Guest User

Untitled

a guest
May 25th, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. class ImageHandler(BaseHandler):
  2. @tornado.web.authenticated
  3. def get(self):
  4. return self.render("image.html")
  5.  
  6. @tornado.web.authenticated
  7. def post(self):
  8. user_id=self.current_user
  9. username = self.db.get("SELECT username from user WHERE id=%s", user_id)
  10. uploaded_image=self.request.files
  11. if imghdr.what('ignore', uploaded_image['avatar'][0]['body']) in ['jpeg','png']:
  12. avatar = Image.open(StringIO.StringIO(uploaded_image['avatar'][0]['body']))
  13. width, height = avatar.size
  14. if width > height:
  15. delta = width - height
  16. left = int(delta/2)
  17. upper = 0
  18. right = height + left
  19. lower = height
  20. else:
  21. delta = height - width
  22. left = int(delta)/2
  23. upper = 0
  24. right = width
  25. lower = width + upper
  26. avatar_square = avatar.crop((left, upper, right, lower))
  27. avatar_mini = copy.copy(avatar_square)
  28. avatar_square.thumbnail((48,48))
  29. avatar_mini.thumbnail((24,24))
  30. filename = username['username']+'.jpg'
  31. minifilename = username['username']+'_mini'+'.jpg'
  32. path_to_save = os.path.join('static', 'avatars', filename)
  33. path_to_mininail = os.path.join('static', 'avatars', minifilename)
  34. avatar_square.save(path_to_save)
  35. avatar_mini.save(path_to_mininail)
  36. self.db.execute("UPDATE user SET user_thumbnail=%s, user_mininail=%s WHERE id=%s", path_to_save, path_to_mininail, user_id)
  37. return self.write("Successfully uploaded the image")
  38. else: return self.write("file format is not accepted")
Add Comment
Please, Sign In to add comment