fix(auth): populate email for local login users
This commit is contained in:
@@ -169,16 +169,11 @@ func (s *AuthService) SAMLLogin(info *sso.SAMLDebugInfo, clientIP, userAgent str
|
|||||||
}
|
}
|
||||||
|
|
||||||
func findOrCreateLocalUser(tx *gorm.DB, username string) (model.User, error) {
|
func findOrCreateLocalUser(tx *gorm.DB, username string) (model.User, error) {
|
||||||
email := ""
|
email := username
|
||||||
if looksLikeEmail(username) {
|
|
||||||
email = username
|
|
||||||
}
|
|
||||||
|
|
||||||
var user model.User
|
var user model.User
|
||||||
query := tx.Where("username = ? AND deleted_at IS NULL", username)
|
query := tx.Where("username = ? AND deleted_at IS NULL", username)
|
||||||
if email != "" {
|
|
||||||
query = query.Or("email = ? AND deleted_at IS NULL", email)
|
query = query.Or("email = ? AND deleted_at IS NULL", email)
|
||||||
}
|
|
||||||
if err := query.First(&user).Error; err == nil {
|
if err := query.First(&user).Error; err == nil {
|
||||||
return user, nil
|
return user, nil
|
||||||
} else if !errors.Is(err, gorm.ErrRecordNotFound) {
|
} else if !errors.Is(err, gorm.ErrRecordNotFound) {
|
||||||
|
|||||||
Reference in New Issue
Block a user