db

package
v0.5.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 26, 2019 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateUserCredential added in v0.5.4

func CreateUserCredential(username, password, clientID string) (string, error)

CreateUserCredential creates a user

func DeleteUserCredential added in v0.5.4

func DeleteUserCredential(userID uuid.UUID) error

DeleteUserCredential deletes the user

func UpdateUserCredential added in v0.5.4

func UpdateUserCredential(userID uuid.UUID, username, password string) error

UpdateUserCredential updates a user

Types

type DefaultUserCredentialsDAO

type DefaultUserCredentialsDAO struct {
	// contains filtered or unexported fields
}

DefaultUserCredentialsDAO a default UserCredentialsDAO interface implementation

func (*DefaultUserCredentialsDAO) CheckCredentials

func (dao *DefaultUserCredentialsDAO) CheckCredentials(username, password string) UserCredential

CheckCredentials verifies if the informed credentials are valid

func (*DefaultUserCredentialsDAO) CreateUserCredential

func (dao *DefaultUserCredentialsDAO) CreateUserCredential(username, password, email string) (string, error)

CreateUserCredential creates a user

func (*DefaultUserCredentialsDAO) GetUserCredential

func (dao *DefaultUserCredentialsDAO) GetUserCredential(username string) (userCredential UserCredential, err error)

GetUserCredential gets an user credential by its username

func (*DefaultUserCredentialsDAO) GetUserCredentialByEmail added in v0.5.4

func (dao *DefaultUserCredentialsDAO) GetUserCredentialByEmail(email string) (userCredential UserCredential, err error)

GetUserCredential gets an user credential by its email

func (*DefaultUserCredentialsDAO) Init

func (dao *DefaultUserCredentialsDAO) Init(secretKey, baseUIPath, publicAddressURL string, outbox chan<- mail.Mail, db *gorm.DB) UserCredentialsDAO

InitFromWebBuilder initializes a default user credentials DAO from web builder

func (*DefaultUserCredentialsDAO) UpdateUserCredential

func (dao *DefaultUserCredentialsDAO) UpdateUserCredential(username, email, password string) error

UpdateUserCredential updates a user

func (*DefaultUserCredentialsDAO) ValidateUserCredentialEmail added in v0.4.0

func (dao *DefaultUserCredentialsDAO) ValidateUserCredentialEmail(username string) error

type UserCredential

type UserCredential struct {
	ID             string `gorm:"primary_key;not null;"`
	Username       string `gorm:"unique_index;not null;"`
	Email          string `gorm:"unique_index;not null;"`
	Password       string `gorm:"not null;"`
	Salt           string `gorm:"not null;"`
	EmailValidated bool   `gorm:"not null;"`
	CreatedAt      time.Time
	UpdatedAt      time.Time
}

UserCredential holds the information from a user credential

func (*UserCredential) BeforeCreate

func (user *UserCredential) BeforeCreate(scope *gorm.Scope) error

BeforeCreate will set a UUID rather than numeric ID.

type UserCredentialsDAO

type UserCredentialsDAO interface {
	Init(secretKey, baseUIPath, publicAddressURL string, outbox chan<- mail.Mail, db *gorm.DB) UserCredentialsDAO
	CreateUserCredential(username, password, email string) (string, error)
	UpdateUserCredential(username, email, password string) error
	GetUserCredential(username string) (UserCredential, error)
	GetUserCredentialByEmail(email string) (UserCredential, error)
	CheckCredentials(username, password string) UserCredential
	ValidateUserCredentialEmail(username string) error
}

UserCredentialsDAO defines the methods that can be performed

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL