summaryrefslogtreecommitdiffstats
path: root/models/user_avatar.go
diff options
context:
space:
mode:
authorsilverwind <me@silverwind.io>2020-12-03 19:46:11 +0100
committerGitHub <noreply@github.com>2020-12-03 19:46:11 +0100
commit9269a038a4e904bdeaf5470e76e3a4f8a2a4685b (patch)
tree59730c0dbe7b011a8cb751d135e44152e7feeec0 /models/user_avatar.go
parent0d35ef5b439623774d1adddf7071d744b1116809 (diff)
downloadgitea-9269a038a4e904bdeaf5470e76e3a4f8a2a4685b.tar.gz
gitea-9269a038a4e904bdeaf5470e76e3a4f8a2a4685b.zip
Direct avatar rendering (#13649)
* Direct avatar rendering This adds new template helpers for avatar rendering which output image elements with direct links to avatars which makes them cacheable by the browsers. This should be a major performance improvment for pages with many avatars. * fix avatars of other user's profile pages * fix top border on user avatar name * uncircle avatars * remove old incomplete avatar selector * use title attribute for name and add it back on blame * minor refactor * tweak comments * fix url path join and adjust test to new result * dedupe functions
Diffstat (limited to 'models/user_avatar.go')
-rw-r--r--models/user_avatar.go11
1 files changed, 5 insertions, 6 deletions
diff --git a/models/user_avatar.go b/models/user_avatar.go
index 2f9db5c2e2..50c1c99c57 100644
--- a/models/user_avatar.go
+++ b/models/user_avatar.go
@@ -13,7 +13,6 @@ import (
"strings"
"code.gitea.io/gitea/modules/avatar"
- "code.gitea.io/gitea/modules/base"
"code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/modules/storage"
@@ -41,7 +40,7 @@ func (u *User) generateRandomAvatar(e Engine) error {
}
if u.Avatar == "" {
- u.Avatar = base.HashEmail(u.AvatarEmail)
+ u.Avatar = HashEmail(u.AvatarEmail)
}
if err := storage.SaveFrom(storage.Avatars, u.CustomAvatarRelativePath(), func(w io.Writer) error {
@@ -76,13 +75,13 @@ func (u *User) SizedRelAvatarLink(size int) string {
//
func (u *User) RealSizedAvatarLink(size int) string {
if u.ID == -1 {
- return base.DefaultAvatarLink()
+ return DefaultAvatarLink()
}
switch {
case u.UseCustomAvatar:
if u.Avatar == "" {
- return base.DefaultAvatarLink()
+ return DefaultAvatarLink()
}
return setting.AppSubURL + "/avatars/" + u.Avatar
case setting.DisableGravatar, setting.OfflineMode:
@@ -94,14 +93,14 @@ func (u *User) RealSizedAvatarLink(size int) string {
return setting.AppSubURL + "/avatars/" + u.Avatar
}
- return base.SizedAvatarLink(u.AvatarEmail, size)
+ return SizedAvatarLink(u.AvatarEmail, size)
}
// RelAvatarLink returns a relative link to the user's avatar. The link
// may either be a sub-URL to this site, or a full URL to an external avatar
// service.
func (u *User) RelAvatarLink() string {
- return u.SizedRelAvatarLink(base.DefaultAvatarSize)
+ return u.SizedRelAvatarLink(DefaultAvatarSize)
}
// AvatarLink returns user avatar absolute link.