fix: use ValidateEmail as binding across web forms

This commit is contained in:
Solomon Victorino 2024-08-28 16:56:35 -06:00
parent df907ec7f9
commit 471567b3ba
24 changed files with 281 additions and 221 deletions

View file

@ -13,6 +13,7 @@ import (
"code.gitea.io/gitea/modules/auth/pam"
"code.gitea.io/gitea/modules/optional"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/modules/validation"
"github.com/google/uuid"
)
@ -39,13 +40,13 @@ func (source *Source) Authenticate(ctx context.Context, user *user_model.User, u
if idx > -1 {
username = pamLogin[:idx]
}
if user_model.ValidateEmail(email) != nil {
if validation.ValidateEmail(email) != nil {
if source.EmailDomain != "" {
email = fmt.Sprintf("%s@%s", username, source.EmailDomain)
} else {
email = fmt.Sprintf("%s@%s", username, setting.Service.NoReplyAddress)
}
if user_model.ValidateEmail(email) != nil {
if validation.ValidateEmail(email) != nil {
email = uuid.New().String() + "@localhost"
}
}