The main server, and probably only repository in this org.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

25 lines
520 B

package users
import (
"git.aiterp.net/lucifer/lucifer/models"
"golang.org/x/crypto/bcrypt"
)
// Register registers a user
func Register(repo models.UserRepository, name, password string) (models.User, error) {
hash, err := bcrypt.GenerateFromPassword([]byte(password), bcrypt.DefaultCost)
if err != nil {
return models.User{}, err
}
user := models.User{ID: -1, Name: name, PassHash: hash}
id, err := repo.InsertUser(user)
if err != nil {
return models.User{}, err
}
user.ID = id
return user, nil
}