mirror of
https://github.com/go-gitea/gitea
synced 2025-07-22 18:28:37 +00:00
Refactor user & avatar (#33433)
1. better GetPossibleUserByID logic 2. fix some function name & comment typos 3. do not re-generate avatar if one exists
This commit is contained in:
@@ -20,27 +20,18 @@ func cacheableRedirect(ctx *context.Context, location string) {
|
||||
ctx.Redirect(location)
|
||||
}
|
||||
|
||||
// AvatarByUserName redirect browser to user avatar of requested size
|
||||
func AvatarByUserName(ctx *context.Context) {
|
||||
userName := ctx.PathParam("username")
|
||||
size := int(ctx.PathParamInt64("size"))
|
||||
|
||||
var user *user_model.User
|
||||
if !user_model.IsGhostUserName(userName) {
|
||||
// AvatarByUsernameSize redirect browser to user avatar of requested size
|
||||
func AvatarByUsernameSize(ctx *context.Context) {
|
||||
username := ctx.PathParam("username")
|
||||
user := user_model.GetSystemUserByName(username)
|
||||
if user == nil {
|
||||
var err error
|
||||
if user, err = user_model.GetUserByName(ctx, userName); err != nil {
|
||||
if user_model.IsErrUserNotExist(err) {
|
||||
ctx.NotFound("GetUserByName", err)
|
||||
return
|
||||
}
|
||||
ctx.ServerError("Invalid user: "+userName, err)
|
||||
if user, err = user_model.GetUserByName(ctx, username); err != nil {
|
||||
ctx.NotFoundOrServerError("GetUserByName", user_model.IsErrUserNotExist, err)
|
||||
return
|
||||
}
|
||||
} else {
|
||||
user = user_model.NewGhostUser()
|
||||
}
|
||||
|
||||
cacheableRedirect(ctx, user.AvatarLinkWithSize(ctx, size))
|
||||
cacheableRedirect(ctx, user.AvatarLinkWithSize(ctx, int(ctx.PathParamInt64("size"))))
|
||||
}
|
||||
|
||||
// AvatarByEmailHash redirects the browser to the email avatar link
|
||||
|
Reference in New Issue
Block a user