diff --git a/models/user.go b/models/user.go index 09febc56a9..c2e1417dc0 100755 --- a/models/user.go +++ b/models/user.go @@ -471,7 +471,6 @@ func (u *User) SizedRelAvatarLink(size int) string { // // This function make take time to return when federated avatars // are in use, due to a DNS lookup need -// func (u *User) RealSizedAvatarLink(size int) string { if u.ID == -1 { return base.DefaultAvatarLink() @@ -954,50 +953,72 @@ var ( ".", "..", ".well-known", + "action", "admin", + "all", "api", "assets", "attachments", + "authentication", + "avatar", "avatars", + "bindPhone", + "blockchain", + "cloudbrains", "commits", + "course", "css", + "dashboard", "debug", + "docs", "error", "explore", + "extension", "fomantic", "ghost", "help", + "home", + "ide", + "image", "img", "install", "issues", "js", + "kanban", "less", "login", "manifest.json", "metrics", "milestones", + "modelsquare", "new", "notifications", + "operation", "org", "plugins", "pulls", "raw", + "recommend", "repo", + "repo-avatars", + "resource_desc", + "resources", + "reward", "robots.txt", "search", + "secure", + "self", + "sendVerifyCode", + "serviceworker.js", + "show", + "slideImage", "stars", + "swagger.v1.json", + "tech", "template", "user", "vendor", - "dashboard", - "operation", - "blockchain", - "avatar", - "swagger.v1.json", - "secure", - "serviceworker.js", - "self", - "repo-avatars", + "verifySlideImage", } reservedUserPatterns = []string{"*.keys", "*.gpg", "*.png"} ) @@ -1012,7 +1033,7 @@ func isUsableName(names, patterns []string, name string) error { } for i := range names { - if name == names[i] { + if name == strings.ToLower(names[i]) { return ErrNameReserved{name} } } @@ -2227,7 +2248,7 @@ func GetBlockChainUnSuccessUsers() ([]*User, error) { return users, err } -//GetUserIdsByUserNames Get userIDs in batches through username paging, this method will ignore errors +// GetUserIdsByUserNames Get userIDs in batches through username paging, this method will ignore errors func GetUserIdsByUserNames(names []string) []int64 { pageSize := 200 length := len(names) diff --git a/routers/org/setting.go b/routers/org/setting.go index 348d8cc8d8..e63d4b4bfd 100644 --- a/routers/org/setting.go +++ b/routers/org/setting.go @@ -64,6 +64,9 @@ func SettingsPost(ctx *context.Context, form auth.UpdateOrgSettingForm) { if err == models.ErrUserNameIllegal { ctx.Data["OrgName"] = true ctx.RenderWithErr(ctx.Tr("form.illegal_username"), tplSettingsOptions, &form) + } else if models.IsErrNameReserved(err) { + ctx.Data["OrgName"] = true + ctx.RenderWithErr(ctx.Tr("org.form.name_reserved", form.Name), tplSettingsOptions, &form) } else { ctx.ServerError("ChangeUserName", err) }