|
@@ -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)
|