aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--models/login.go9
1 files changed, 4 insertions, 5 deletions
diff --git a/models/login.go b/models/login.go
index c0fc20f383..27ef377069 100644
--- a/models/login.go
+++ b/models/login.go
@@ -224,14 +224,13 @@ func UserSignIn(uname, passwd string) (*User, error) {
if userExists {
switch u.LoginType {
- case NOTYPE:
- fallthrough
- case PLAIN:
+ case NOTYPE, PLAIN:
if u.ValidatePassword(passwd) {
return u, nil
}
return nil, ErrUserNotExist{u.Id, u.Name}
+
default:
var source LoginSource
hasSource, err := x.Id(u.LoginSource).Get(&source)
@@ -246,12 +245,12 @@ func UserSignIn(uname, passwd string) (*User, error) {
}
var sources []LoginSource
- if err = x.UseBool().Find(&sources, &LoginSource{IsActived: true, AllowAutoRegister: true}); err != nil {
+ if err = x.UseBool().Find(&sources, &LoginSource{IsActived: true}); err != nil {
return nil, err
}
for _, source := range sources {
- u, err := ExternalUserLogin(nil, uname, passwd, &source, true)
+ u, err := ExternalUserLogin(nil, uname, passwd, &source, source.AllowAutoRegister)
if err == nil {
return u, nil
}