Add code of delete user

This commit is contained in:
Unknown
2014-02-19 13:04:31 -05:00
parent be0ba9ea88
commit 4b92a6c2df
6 changed files with 35 additions and 25 deletions

View File

@ -74,6 +74,7 @@ type Action struct {
}
var (
ErrUserOwnRepos = errors.New("User still have ownership of repositories")
ErrUserAlreadyExist = errors.New("User already exist")
ErrUserNotExist = errors.New("User does not exist")
)
@ -95,7 +96,6 @@ func RegisterUser(user *User) (err error) {
user.LowerName = strings.ToLower(user.Name)
user.Avatar = utils.EncodeMd5(user.Email)
user.Created = time.Now()
user.Updated = time.Now()
user.EncodePasswd()
_, err = orm.Insert(user)
@ -110,8 +110,14 @@ func UpdateUser(user *User) (err error) {
// DeleteUser completely deletes everything of the user.
func DeleteUser(user *User) error {
// TODO: check if has ownership of any repository.
_, err := orm.Delete(user)
repos, err := GetRepositories(user)
if err != nil {
return errors.New("modesl.GetRepositories: " + err.Error())
} else if len(repos) > 0 {
return ErrUserOwnRepos
}
_, err = orm.Delete(user)
// TODO: delete and update follower information.
return err
}