diff --git a/internal/db/login_source.go b/internal/db/login_source.go index e821e18698..125d771a6c 100644 --- a/internal/db/login_source.go +++ b/internal/db/login_source.go @@ -105,7 +105,6 @@ func LoginViaLDAP(login, password string, source *LoginSource, autoRegister bool Name: username, FullName: composeFullName(fn, sn, username), Email: mail, - LoginType: source.Type, LoginSource: source.ID, LoginName: login, IsActive: true, @@ -245,7 +244,6 @@ func LoginViaSMTP(login, password string, sourceID int64, cfg *SMTPConfig, autoR Name: strings.ToLower(username), Email: login, Passwd: password, - LoginType: LoginSMTP, LoginSource: sourceID, LoginName: login, IsActive: true, @@ -281,7 +279,6 @@ func LoginViaPAM(login, password string, sourceID int64, cfg *PAMConfig, autoReg Name: login, Email: login, Passwd: password, - LoginType: LoginPAM, LoginSource: sourceID, LoginName: login, IsActive: true, @@ -317,7 +314,6 @@ func LoginViaGitHub(login, password string, sourceID int64, cfg *GitHubConfig, a Email: email, Website: url, Passwd: password, - LoginType: LoginGitHub, LoginSource: sourceID, LoginName: login, IsActive: true, diff --git a/internal/db/user.go b/internal/db/user.go index 7abdfc6970..22f25b5da4 100644 --- a/internal/db/user.go +++ b/internal/db/user.go @@ -53,10 +53,9 @@ type User struct { Name string `xorm:"UNIQUE NOT NULL" gorm:"NOT NULL"` FullName string // Email is the primary email address (to be used for communication) - Email string `xorm:"NOT NULL" gorm:"NOT NULL"` - Passwd string `xorm:"NOT NULL" gorm:"NOT NULL"` - LoginType LoginType // TODO: Remove me https://github.com/gogs/gogs/issues/6117. - LoginSource int64 `xorm:"NOT NULL DEFAULT 0" gorm:"NOT NULL;DEFAULT:0"` + Email string `xorm:"NOT NULL" gorm:"NOT NULL"` + Passwd string `xorm:"NOT NULL" gorm:"NOT NULL"` + LoginSource int64 `xorm:"NOT NULL DEFAULT 0" gorm:"NOT NULL;DEFAULT:0"` LoginName string Type UserType OwnedOrgs []*User `xorm:"-" gorm:"-" json:"-"` @@ -142,7 +141,7 @@ func (u *User) APIFormat() *api.User { // returns true if user login type is LoginPlain. func (u *User) IsLocal() bool { - return u.LoginType <= LoginPlain + return u.LoginSource <= 0 } // HasForkedRepo checks if user has already forked a repository with given ID. diff --git a/internal/db/users.go b/internal/db/users.go index 10935b4a65..a002c290a3 100644 --- a/internal/db/users.go +++ b/internal/db/users.go @@ -98,7 +98,7 @@ func (db *users) Authenticate(login, password string, loginSourceID int64) (*Use } // Validate password hash fetched from database for local accounts. - if user.LoginType == LoginNotype || user.LoginType == LoginPlain { + if user.IsLocal() { if user.ValidatePassword(password) { return user, nil } diff --git a/internal/route/admin/users.go b/internal/route/admin/users.go index 9f71cd1cac..8a09690d0e 100644 --- a/internal/route/admin/users.go +++ b/internal/route/admin/users.go @@ -77,17 +77,15 @@ func NewUserPost(c *context.Context, f form.AdminCrateUser) { } u := &db.User{ - Name: f.UserName, - Email: f.Email, - Passwd: f.Password, - IsActive: true, - LoginType: db.LoginPlain, + Name: f.UserName, + Email: f.Email, + Passwd: f.Password, + IsActive: true, } if len(f.LoginType) > 0 { fields := strings.Split(f.LoginType, "-") if len(fields) == 2 { - u.LoginType = db.LoginType(com.StrTo(fields[0]).MustInt()) u.LoginSource = com.StrTo(fields[1]).MustInt64() u.LoginName = f.LoginName } @@ -180,12 +178,10 @@ func EditUserPost(c *context.Context, f form.AdminEditUser) { fields := strings.Split(f.LoginType, "-") if len(fields) == 2 { - loginType := db.LoginType(com.StrTo(fields[0]).MustInt()) loginSource := com.StrTo(fields[1]).MustInt64() if u.LoginSource != loginSource { u.LoginSource = loginSource - u.LoginType = loginType } } diff --git a/internal/route/api/v1/admin/user.go b/internal/route/api/v1/admin/user.go index 419296af82..ef00426154 100644 --- a/internal/route/api/v1/admin/user.go +++ b/internal/route/api/v1/admin/user.go @@ -32,19 +32,17 @@ func parseLoginSource(c *context.APIContext, u *db.User, sourceID int64, loginNa return } - u.LoginType = source.Type u.LoginSource = source.ID u.LoginName = loginName } func CreateUser(c *context.APIContext, form api.CreateUserOption) { u := &db.User{ - Name: form.Username, - FullName: form.FullName, - Email: form.Email, - Passwd: form.Password, - IsActive: true, - LoginType: db.LoginPlain, + Name: form.Username, + FullName: form.FullName, + Email: form.Email, + Passwd: form.Password, + IsActive: true, } parseLoginSource(c, u, form.SourceID, form.LoginName)