aboutsummaryrefslogtreecommitdiff
path: root/internal/db/users.go
diff options
context:
space:
mode:
authorᴜɴᴋɴᴡᴏɴ <u@gogs.io>2020-09-06 10:11:08 +0800
committerGitHub <noreply@github.com>2020-09-06 10:11:08 +0800
commit519e59b5778571ace3f681b81a21b92a38ede890 (patch)
tree373a2021f3adcf8b2c44e6f28282733e00909d88 /internal/db/users.go
parent771d3673f5dc1ba96ed9bf2ebe22c7f3066ec31d (diff)
db: migrate to GORM v2 (#6309)
Diffstat (limited to 'internal/db/users.go')
-rw-r--r--internal/db/users.go22
1 files changed, 13 insertions, 9 deletions
diff --git a/internal/db/users.go b/internal/db/users.go
index a002c290..64535ea3 100644
--- a/internal/db/users.go
+++ b/internal/db/users.go
@@ -9,8 +9,8 @@ import (
"strings"
"time"
- "github.com/jinzhu/gorm"
"github.com/pkg/errors"
+ "gorm.io/gorm"
"gogs.io/gogs/internal/cryptoutil"
"gogs.io/gogs/internal/errutil"
@@ -48,15 +48,19 @@ type UsersStore interface {
var Users UsersStore
// NOTE: This is a GORM create hook.
-func (u *User) BeforeCreate() {
- u.CreatedUnix = gorm.NowFunc().Unix()
- u.UpdatedUnix = u.CreatedUnix
+func (u *User) BeforeCreate(tx *gorm.DB) error {
+ if u.CreatedUnix == 0 {
+ u.CreatedUnix = tx.NowFunc().Unix()
+ u.UpdatedUnix = u.CreatedUnix
+ }
+ return nil
}
// NOTE: This is a GORM query hook.
-func (u *User) AfterFind() {
+func (u *User) AfterFind(tx *gorm.DB) error {
u.Created = time.Unix(u.CreatedUnix, 0).Local()
u.Updated = time.Unix(u.UpdatedUnix, 0).Local()
+ return nil
}
var _ UsersStore = (*users)(nil)
@@ -253,7 +257,7 @@ func (db *users) GetByEmail(email string) (*User, error) {
err := db.Where("email = ? AND type = ? AND is_active = ?", email, UserIndividual, true).First(user).Error
if err == nil {
return user, nil
- } else if !gorm.IsRecordNotFoundError(err) {
+ } else if err != gorm.ErrRecordNotFound {
return nil, err
}
@@ -261,7 +265,7 @@ func (db *users) GetByEmail(email string) (*User, error) {
emailAddress := new(EmailAddress)
err = db.Where("email = ? AND is_activated = ?", email, true).First(emailAddress).Error
if err != nil {
- if gorm.IsRecordNotFoundError(err) {
+ if err == gorm.ErrRecordNotFound {
return nil, ErrUserNotExist{args: errutil.Args{"email": email}}
}
return nil, err
@@ -274,7 +278,7 @@ func (db *users) GetByID(id int64) (*User, error) {
user := new(User)
err := db.Where("id = ?", id).First(user).Error
if err != nil {
- if gorm.IsRecordNotFoundError(err) {
+ if err == gorm.ErrRecordNotFound {
return nil, ErrUserNotExist{args: errutil.Args{"userID": id}}
}
return nil, err
@@ -286,7 +290,7 @@ func (db *users) GetByUsername(username string) (*User, error) {
user := new(User)
err := db.Where("lower_name = ?", strings.ToLower(username)).First(user).Error
if err != nil {
- if gorm.IsRecordNotFoundError(err) {
+ if err == gorm.ErrRecordNotFound {
return nil, ErrUserNotExist{args: errutil.Args{"name": username}}
}
return nil, err