diff options
Diffstat (limited to 'models/user.go')
-rw-r--r-- | models/user.go | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/models/user.go b/models/user.go index 44dadb9a..ec88edde 100644 --- a/models/user.go +++ b/models/user.go @@ -11,6 +11,8 @@ import ( "time" "github.com/dchest/scrypt" + + "github.com/gogits/gogs/utils" ) // User types. @@ -29,9 +31,9 @@ const ( type User struct { Id int64 LowerName string `xorm:"unique not null"` - Name string `xorm:"unique not null"` - Email string `xorm:"unique not null"` - Passwd string `xorm:"not null"` + Name string `xorm:"unique not null" valid:"Required"` + Email string `xorm:"unique not null" valid:"Email"` + Passwd string `xorm:"not null" valid:"MinSize(8)"` LoginType int Type int NumFollowers int @@ -82,24 +84,17 @@ func IsUserExist(name string) (bool, error) { return orm.Get(&User{LowerName: strings.ToLower(name)}) } -// validateUser checks if user exist. -func validateUser(name string) error { - isExist, err := IsUserExist(name) +// RegisterUser creates record of a new user. +func RegisterUser(user *User) (err error) { + isExist, err := IsUserExist(user.Name) if err != nil { return err } else if isExist { return ErrUserAlreadyExist } - return nil -} -// RegisterUser creates record of a new user. -func RegisterUser(user *User) (err error) { - if err = validateUser(user.Name); err != nil { - return err - } user.LowerName = strings.ToLower(user.Name) - // TODO: generate Avatar address. + user.Avatar = utils.EncodeMd5(user.Email) user.Created = time.Now() user.Updated = time.Now() _, err = orm.Insert(user) |