1
0
Fork 0

Makes user profile view editable

This commit is contained in:
Mouse Reeve 2021-04-01 08:32:06 -07:00
parent 31b7d267a4
commit e2388d8f67
4 changed files with 61 additions and 15 deletions

View file

@ -163,21 +163,26 @@ class EditUser(View):
data = {"form": form, "user": request.user}
return TemplateResponse(request, "preferences/edit_user.html", data)
user = form.save(commit=False)
if "avatar" in form.files:
# crop and resize avatar upload
image = Image.open(form.files["avatar"])
image = crop_avatar(image)
# set the name to a hash
extension = form.files["avatar"].name.split(".")[-1]
filename = "%s.%s" % (uuid4(), extension)
user.avatar.save(filename, image, save=False)
user.save()
save_user_form(form)
return redirect(user.local_path)
def save_user_form(form):
""" special handling for the user form """
user = form.save(commit=False)
if "avatar" in form.files:
# crop and resize avatar upload
image = Image.open(form.files["avatar"])
image = crop_avatar(image)
# set the name to a hash
extension = form.files["avatar"].name.split(".")[-1]
filename = "%s.%s" % (uuid4(), extension)
user.avatar.save(filename, image, save=False)
user.save()
return user
def crop_avatar(image):
""" reduce the size and make an avatar square """