db

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Nov 28, 2023 License: AGPL-3.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MaskNotFoundError

func MaskNotFoundError(err, mask error) error

Types

type Categories

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

func NewCategories

func NewCategories(db *sql.DB) *Categories

func (*Categories) GetAll

func (cs *Categories) GetAll(ctx context.Context) ([]njudge.Category, error)

func (*Categories) GetAllWithParent

func (cs *Categories) GetAllWithParent(ctx context.Context, parentID int) ([]njudge.Category, error)

func (*Categories) Insert

func (cs *Categories) Insert(ctx context.Context, c njudge.Category) (*njudge.Category, error)

type Problems

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

func NewProblems

func NewProblems(db *sql.DB) *Problems

func (*Problems) Delete

func (ps *Problems) Delete(ctx context.Context, ID int) error

func (*Problems) Get

func (ps *Problems) Get(ctx context.Context, ID int) (*njudge.Problem, error)

func (*Problems) GetAll

func (ps *Problems) GetAll(ctx context.Context) ([]njudge.Problem, error)

func (*Problems) GetProblem

func (ps *Problems) GetProblem(ctx context.Context, problemset string, problem string) (*njudge.Problem, error)

func (*Problems) GetProblemData

func (ps *Problems) GetProblemData(ctx context.Context, problemID int, userID int) (*njudge.ProblemInfo, error)

func (*Problems) GetProblemsWithCategory

func (ps *Problems) GetProblemsWithCategory(ctx context.Context, f njudge.CategoryFilter) ([]njudge.Problem, error)

func (*Problems) Insert

func (ps *Problems) Insert(ctx context.Context, p njudge.Problem) (*njudge.Problem, error)

func (*Problems) Update

func (ps *Problems) Update(ctx context.Context, p njudge.Problem, fields []string) error

type SubmissionListQuery

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

func NewSubmissionListQuery

func NewSubmissionListQuery(db *sql.DB) *SubmissionListQuery

func (*SubmissionListQuery) GetAttemptedSubmissionList

func (s *SubmissionListQuery) GetAttemptedSubmissionList(ctx context.Context, userID int) (*njudge.SubmissionList, error)

func (*SubmissionListQuery) GetPagedSubmissionList

func (*SubmissionListQuery) GetSolvedSubmissionList

func (s *SubmissionListQuery) GetSolvedSubmissionList(ctx context.Context, userID int) (*njudge.SubmissionList, error)

func (*SubmissionListQuery) GetSubmissionList

type Submissions

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

func NewSubmissions

func NewSubmissions(db *sql.DB) *Submissions

func (*Submissions) Delete

func (ss *Submissions) Delete(ctx context.Context, ID int) error

func (*Submissions) Get

func (ss *Submissions) Get(ctx context.Context, ID int) (*njudge.Submission, error)

func (*Submissions) GetAll

func (ss *Submissions) GetAll(ctx context.Context) ([]njudge.Submission, error)

func (*Submissions) Insert

func (*Submissions) Update

func (ss *Submissions) Update(ctx context.Context, s njudge.Submission, fields []string) error

type Tags

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

func NewTags

func NewTags(db *sql.DB) *Tags

func (*Tags) Delete

func (ts *Tags) Delete(ctx context.Context, ID int) error

func (*Tags) Get

func (ts *Tags) Get(ctx context.Context, ID int) (*njudge.Tag, error)

func (*Tags) GetAll

func (ts *Tags) GetAll(ctx context.Context) ([]njudge.Tag, error)

func (*Tags) GetByName

func (ts *Tags) GetByName(ctx context.Context, name string) (*njudge.Tag, error)

func (*Tags) Insert

func (ts *Tags) Insert(ctx context.Context, t njudge.Tag) (*njudge.Tag, error)

func (*Tags) Update

func (ts *Tags) Update(ctx context.Context, t njudge.Tag) error

type Users

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

func NewUsers

func NewUsers(db *sql.DB) *Users

func (*Users) Delete

func (us *Users) Delete(ctx context.Context, ID int) error

func (*Users) Get

func (us *Users) Get(ctx context.Context, ID int) (*njudge.User, error)

func (*Users) GetByEmail

func (us *Users) GetByEmail(ctx context.Context, email string) (*njudge.User, error)

func (*Users) GetByName

func (us *Users) GetByName(ctx context.Context, name string) (*njudge.User, error)

func (*Users) Insert

func (us *Users) Insert(ctx context.Context, u njudge.User) (*njudge.User, error)

inserts a njudge.User to the database with a possible forgotten password key

func (*Users) Update

func (us *Users) Update(ctx context.Context, u *njudge.User, fields []string) error

updates the user's given fields

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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