summaryrefslogtreecommitdiffstats
path: root/models/user.go
diff options
context:
space:
mode:
authorLunny Xiao <xiaolunwen@gmail.com>2020-02-03 16:47:04 +0800
committerGitHub <noreply@github.com>2020-02-03 09:47:04 +0100
commit48ce135cc9d54d1c5cf876411453414a53183968 (patch)
treee87064c6693e135d4732ba8c8289a267e560d985 /models/user.go
parente959d1a48baf6a59943949e0d6840e1512cd8934 (diff)
downloadgitea-48ce135cc9d54d1c5cf876411453414a53183968.tar.gz
gitea-48ce135cc9d54d1c5cf876411453414a53183968.zip
Move PushUpdateAddDeleteTags to repository module from models (#10106)
* Move PushUpdateAddDeleteTags to repository module from models * Fix deadlock on sqlite
Diffstat (limited to 'models/user.go')
-rw-r--r--models/user.go13
1 files changed, 9 insertions, 4 deletions
diff --git a/models/user.go b/models/user.go
index ee66acf1a6..fda3bb5eab 100644
--- a/models/user.go
+++ b/models/user.go
@@ -1452,6 +1452,11 @@ func ValidateCommitsWithEmails(oldCommits *list.List) *list.List {
// GetUserByEmail returns the user object by given e-mail if exists.
func GetUserByEmail(email string) (*User, error) {
+ return GetUserByEmailContext(DefaultDBContext(), email)
+}
+
+// GetUserByEmailContext returns the user object by given e-mail if exists with db context
+func GetUserByEmailContext(ctx DBContext, email string) (*User, error) {
if len(email) == 0 {
return nil, ErrUserNotExist{0, email, 0}
}
@@ -1459,7 +1464,7 @@ func GetUserByEmail(email string) (*User, error) {
email = strings.ToLower(email)
// First try to find the user by primary email
user := &User{Email: email}
- has, err := x.Get(user)
+ has, err := ctx.e.Get(user)
if err != nil {
return nil, err
}
@@ -1469,19 +1474,19 @@ func GetUserByEmail(email string) (*User, error) {
// Otherwise, check in alternative list for activated email addresses
emailAddress := &EmailAddress{Email: email, IsActivated: true}
- has, err = x.Get(emailAddress)
+ has, err = ctx.e.Get(emailAddress)
if err != nil {
return nil, err
}
if has {
- return GetUserByID(emailAddress.UID)
+ return getUserByID(ctx.e, emailAddress.UID)
}
// Finally, if email address is the protected email address:
if strings.HasSuffix(email, fmt.Sprintf("@%s", setting.Service.NoReplyAddress)) {
username := strings.TrimSuffix(email, fmt.Sprintf("@%s", setting.Service.NoReplyAddress))
user := &User{LowerName: username}
- has, err := x.Get(user)
+ has, err := ctx.e.Get(user)
if err != nil {
return nil, err
}