feat: add verification levels
This commit is contained in:
@ -37,4 +37,6 @@ type User struct {
|
|||||||
ProfilePicture *string `json:"profile_picture"`
|
ProfilePicture *string `json:"profile_picture"`
|
||||||
CreatedBy *uuid.UUID `json:"created_by"`
|
CreatedBy *uuid.UUID `json:"created_by"`
|
||||||
EmailVerified bool `json:"email_verified"`
|
EmailVerified bool `json:"email_verified"`
|
||||||
|
AvatarVerified bool `json:"avatar_verified"`
|
||||||
|
Verified bool `json:"verified"`
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
const findAdminUsers = `-- name: FindAdminUsers :many
|
const findAdminUsers = `-- name: FindAdminUsers :many
|
||||||
SELECT id, email, full_name, password_hash, is_admin, created_at, updated_at, last_login, phone_number, profile_picture, created_by, email_verified FROM users WHERE created_by = $1
|
SELECT id, email, full_name, password_hash, is_admin, created_at, updated_at, last_login, phone_number, profile_picture, created_by, email_verified, avatar_verified, verified FROM users WHERE created_by = $1
|
||||||
`
|
`
|
||||||
|
|
||||||
func (q *Queries) FindAdminUsers(ctx context.Context, createdBy *uuid.UUID) ([]User, error) {
|
func (q *Queries) FindAdminUsers(ctx context.Context, createdBy *uuid.UUID) ([]User, error) {
|
||||||
@ -37,6 +37,8 @@ func (q *Queries) FindAdminUsers(ctx context.Context, createdBy *uuid.UUID) ([]U
|
|||||||
&i.ProfilePicture,
|
&i.ProfilePicture,
|
||||||
&i.CreatedBy,
|
&i.CreatedBy,
|
||||||
&i.EmailVerified,
|
&i.EmailVerified,
|
||||||
|
&i.AvatarVerified,
|
||||||
|
&i.Verified,
|
||||||
); err != nil {
|
); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -49,7 +51,7 @@ func (q *Queries) FindAdminUsers(ctx context.Context, createdBy *uuid.UUID) ([]U
|
|||||||
}
|
}
|
||||||
|
|
||||||
const findAllUsers = `-- name: FindAllUsers :many
|
const findAllUsers = `-- name: FindAllUsers :many
|
||||||
SELECT id, email, full_name, password_hash, is_admin, created_at, updated_at, last_login, phone_number, profile_picture, created_by, email_verified FROM users
|
SELECT id, email, full_name, password_hash, is_admin, created_at, updated_at, last_login, phone_number, profile_picture, created_by, email_verified, avatar_verified, verified FROM users
|
||||||
`
|
`
|
||||||
|
|
||||||
func (q *Queries) FindAllUsers(ctx context.Context) ([]User, error) {
|
func (q *Queries) FindAllUsers(ctx context.Context) ([]User, error) {
|
||||||
@ -74,6 +76,8 @@ func (q *Queries) FindAllUsers(ctx context.Context) ([]User, error) {
|
|||||||
&i.ProfilePicture,
|
&i.ProfilePicture,
|
||||||
&i.CreatedBy,
|
&i.CreatedBy,
|
||||||
&i.EmailVerified,
|
&i.EmailVerified,
|
||||||
|
&i.AvatarVerified,
|
||||||
|
&i.Verified,
|
||||||
); err != nil {
|
); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -86,7 +90,7 @@ func (q *Queries) FindAllUsers(ctx context.Context) ([]User, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const findUserEmail = `-- name: FindUserEmail :one
|
const findUserEmail = `-- name: FindUserEmail :one
|
||||||
SELECT id, email, full_name, password_hash, is_admin, created_at, updated_at, last_login, phone_number, profile_picture, created_by, email_verified FROM users WHERE email = $1 LIMIT 1
|
SELECT id, email, full_name, password_hash, is_admin, created_at, updated_at, last_login, phone_number, profile_picture, created_by, email_verified, avatar_verified, verified FROM users WHERE email = $1 LIMIT 1
|
||||||
`
|
`
|
||||||
|
|
||||||
func (q *Queries) FindUserEmail(ctx context.Context, email string) (User, error) {
|
func (q *Queries) FindUserEmail(ctx context.Context, email string) (User, error) {
|
||||||
@ -105,12 +109,14 @@ func (q *Queries) FindUserEmail(ctx context.Context, email string) (User, error)
|
|||||||
&i.ProfilePicture,
|
&i.ProfilePicture,
|
||||||
&i.CreatedBy,
|
&i.CreatedBy,
|
||||||
&i.EmailVerified,
|
&i.EmailVerified,
|
||||||
|
&i.AvatarVerified,
|
||||||
|
&i.Verified,
|
||||||
)
|
)
|
||||||
return i, err
|
return i, err
|
||||||
}
|
}
|
||||||
|
|
||||||
const findUserId = `-- name: FindUserId :one
|
const findUserId = `-- name: FindUserId :one
|
||||||
SELECT id, email, full_name, password_hash, is_admin, created_at, updated_at, last_login, phone_number, profile_picture, created_by, email_verified FROM users WHERE id = $1 LIMIT 1
|
SELECT id, email, full_name, password_hash, is_admin, created_at, updated_at, last_login, phone_number, profile_picture, created_by, email_verified, avatar_verified, verified FROM users WHERE id = $1 LIMIT 1
|
||||||
`
|
`
|
||||||
|
|
||||||
func (q *Queries) FindUserId(ctx context.Context, id uuid.UUID) (User, error) {
|
func (q *Queries) FindUserId(ctx context.Context, id uuid.UUID) (User, error) {
|
||||||
@ -129,6 +135,8 @@ func (q *Queries) FindUserId(ctx context.Context, id uuid.UUID) (User, error) {
|
|||||||
&i.ProfilePicture,
|
&i.ProfilePicture,
|
||||||
&i.CreatedBy,
|
&i.CreatedBy,
|
||||||
&i.EmailVerified,
|
&i.EmailVerified,
|
||||||
|
&i.AvatarVerified,
|
||||||
|
&i.Verified,
|
||||||
)
|
)
|
||||||
return i, err
|
return i, err
|
||||||
}
|
}
|
||||||
|
12
migrations/00008_add_verification_levels.sql
Normal file
12
migrations/00008_add_verification_levels.sql
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
-- +goose Up
|
||||||
|
-- +goose StatementBegin
|
||||||
|
ALTER TABLE users
|
||||||
|
ADD COLUMN avatar_verified BOOLEAN NOT NULL DEFAULT FALSE;
|
||||||
|
|
||||||
|
-- +goose StatementEnd
|
||||||
|
-- +goose Down
|
||||||
|
-- +goose StatementBegin
|
||||||
|
ALTER TABLE users
|
||||||
|
DROP COLUMN avatar_verified;
|
||||||
|
|
||||||
|
-- +goose StatementEnd
|
12
migrations/00009_add_complete_verify.sql
Normal file
12
migrations/00009_add_complete_verify.sql
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
-- +goose Up
|
||||||
|
-- +goose StatementBegin
|
||||||
|
ALTER TABLE users
|
||||||
|
ADD COLUMN verified BOOLEAN NOT NULL DEFAULT FALSE;
|
||||||
|
|
||||||
|
-- +goose StatementEnd
|
||||||
|
-- +goose Down
|
||||||
|
-- +goose StatementBegin
|
||||||
|
ALTER TABLE users
|
||||||
|
DROP COLUMN verified;
|
||||||
|
|
||||||
|
-- +goose StatementEnd
|
Reference in New Issue
Block a user