summaryrefslogtreecommitdiffstats
path: root/models/user.go
diff options
context:
space:
mode:
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
}