Enforce username limitations on registration for #2527

This commit is contained in:
Gabe Kangas 2022-12-29 10:03:15 -08:00
parent 0c03773c4c
commit 6a8473a297
No known key found for this signature in database
GPG key ID: 4345B2060657F330

View file

@ -56,23 +56,32 @@ func SetupUsers() {
_datastore = data.GetDatastore()
}
// CreateAnonymousUser will create a new anonymous user with the provided display name.
func CreateAnonymousUser(displayName string) (*User, string, error) {
id := shortid.MustGenerate()
if displayName == "" {
func generateDisplayName() string {
suggestedUsernamesList := data.GetSuggestedUsernamesList()
if len(suggestedUsernamesList) >= minSuggestedUsernamePoolLength {
index := utils.RandomIndex(len(suggestedUsernamesList))
displayName = suggestedUsernamesList[index]
return suggestedUsernamesList[index]
} 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)
id := shortid.MustGenerate()
user := &User{
ID: id,
DisplayName: displayName,