Ejemplo n.º 1
0
func (u *User) CreateNew(db interfaces.Orm) error {
	checkUser := &User{}
	if db.First(checkUser, u) == nil {
		return errors.New("User already exists")
	}
	if len(u.Password) == 0 {
		strHelper := &helper.Str{}
		u.Password = strHelper.GenRand(12)
		log.Println(u.Password)
	}

	hashPassword, err := bcrypt.GenerateFromPassword([]byte(u.Password), 10)
	u.Password = string(hashPassword)
	if err != nil {
		return err
	}
	now := time.Now()
	u.CreatedAt = &now
	err = db.Create(u)
	if err != nil {
		return err
	}
	return nil
}