summaryrefslogtreecommitdiffstats
path: root/models
diff options
context:
space:
mode:
Diffstat (limited to 'models')
-rw-r--r--models/user_avatar.go9
1 files changed, 9 insertions, 0 deletions
diff --git a/models/user_avatar.go b/models/user_avatar.go
index 65e59eb326..a7ca1c9151 100644
--- a/models/user_avatar.go
+++ b/models/user_avatar.go
@@ -153,6 +153,15 @@ func (u *User) UploadAvatar(data []byte) error {
return sess.Commit()
}
+// IsUploadAvatarChanged returns true if the current user's avatar would be changed with the provided data
+func (u *User) IsUploadAvatarChanged(data []byte) bool {
+ if !u.UseCustomAvatar || len(u.Avatar) == 0 {
+ return true
+ }
+ avatarID := fmt.Sprintf("%x", md5.Sum([]byte(fmt.Sprintf("%d-%x", u.ID, md5.Sum(data)))))
+ return u.Avatar != avatarID
+}
+
// DeleteAvatar deletes the user's custom avatar.
func (u *User) DeleteAvatar() error {
aPath := u.CustomAvatarRelativePath()