From 9813e1795e546f208ed8d1b3e3f89d784d3cd54b Mon Sep 17 00:00:00 2001 From: Sam Date: Thu, 23 Mar 2023 10:07:51 +0100 Subject: [PATCH] fix: delete current avatar when setting new avatar (fixes #33) --- backend/routes/member/patch_member.go | 8 ++++++++ backend/routes/user/patch_user.go | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/backend/routes/member/patch_member.go b/backend/routes/member/patch_member.go index ce89db4..8182c6f 100644 --- a/backend/routes/member/patch_member.go +++ b/backend/routes/member/patch_member.go @@ -190,6 +190,14 @@ func (s *Server) patchMember(w http.ResponseWriter, r *http.Request) error { return err } avatarHash = &hash + + // delete current avatar if member has one + if m.Avatar != nil { + err = s.DB.DeleteMemberAvatar(ctx, claims.UserID, *m.Avatar) + if err != nil { + log.Errorf("deleting existing avatar: %v", err) + } + } } } diff --git a/backend/routes/user/patch_user.go b/backend/routes/user/patch_user.go index 0a5a228..e56898b 100644 --- a/backend/routes/user/patch_user.go +++ b/backend/routes/user/patch_user.go @@ -137,6 +137,14 @@ func (s *Server) patchUser(w http.ResponseWriter, r *http.Request) error { return err } avatarHash = &hash + + // delete current avatar if user has one + if u.Avatar != nil { + err = s.DB.DeleteUserAvatar(ctx, claims.UserID, *u.Avatar) + if err != nil { + log.Errorf("deleting existing avatar: %v", err) + } + } } }