Browse Source

Enforce username limitations on registration for #2527

pull/2533/head
Gabe Kangas 3 years ago
parent
commit
6a8473a297
No known key found for this signature in database
GPG Key ID: 4345B2060657F330
  1. 23
      core/user/user.go

23
core/user/user.go

@ -56,23 +56,32 @@ func SetupUsers() {
_datastore = data.GetDatastore() _datastore = data.GetDatastore()
} }
// CreateAnonymousUser will create a new anonymous user with the provided display name. func generateDisplayName() string {
func CreateAnonymousUser(displayName string) (*User, string, error) {
id := shortid.MustGenerate()
if displayName == "" {
suggestedUsernamesList := data.GetSuggestedUsernamesList() suggestedUsernamesList := data.GetSuggestedUsernamesList()
if len(suggestedUsernamesList) >= minSuggestedUsernamePoolLength { if len(suggestedUsernamesList) >= minSuggestedUsernamePoolLength {
index := utils.RandomIndex(len(suggestedUsernamesList)) index := utils.RandomIndex(len(suggestedUsernamesList))
displayName = suggestedUsernamesList[index] return suggestedUsernamesList[index]
} else { } else {
displayName = utils.GeneratePhrase() return utils.GeneratePhrase()
} }
}
// CreateAnonymousUser will create a new anonymous user with the provided display name.
func CreateAnonymousUser(displayName string) (*User, string, error) {
// Try to assign a name that was requested.
if displayName != "" {
// If name isn't available then generate a random one.
if available, _ := IsDisplayNameAvailable(displayName); !available {
displayName = generateDisplayName()
}
} else {
displayName = generateDisplayName()
} }
displayColor := utils.GenerateRandomDisplayColor(config.MaxUserColor) displayColor := utils.GenerateRandomDisplayColor(config.MaxUserColor)
id := shortid.MustGenerate()
user := &User{ user := &User{
ID: id, ID: id,
DisplayName: displayName, DisplayName: displayName,

Loading…
Cancel
Save