queries

package
v0.7.9 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClearScenePerformerAliasParams

type ClearScenePerformerAliasParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	As          *string   `db:"as" json:"as"`
}

type CountNotificationsByUserParams

type CountNotificationsByUserParams struct {
	UserID     uuid.UUID            `db:"user_id" json:"user_id"`
	UnreadOnly bool                 `db:"unread_only" json:"unread_only"`
	Type       NullNotificationType `db:"type" json:"type"`
}

type CountUserEditsByStatusRow

type CountUserEditsByStatusRow struct {
	Status string `db:"status" json:"status"`
	Count  int64  `db:"count" json:"count"`
}

type CountVotesByTypeRow

type CountVotesByTypeRow struct {
	Vote  string `db:"vote" json:"vote"`
	Count int64  `db:"count" json:"count"`
}

type CreateDraftParams

type CreateDraftParams struct {
	ID     uuid.UUID       `db:"id" json:"id"`
	UserID uuid.UUID       `db:"user_id" json:"user_id"`
	Type   string          `db:"type" json:"type"`
	Data   json.RawMessage `db:"data" json:"data"`
}

type CreateEditCommentParams

type CreateEditCommentParams struct {
	ID     uuid.UUID     `db:"id" json:"id"`
	EditID uuid.UUID     `db:"edit_id" json:"edit_id"`
	UserID uuid.NullUUID `db:"user_id" json:"user_id"`
	Text   string        `db:"text" json:"text"`
}

type CreateEditParams

type CreateEditParams struct {
	ID         uuid.UUID     `db:"id" json:"id"`
	UserID     uuid.NullUUID `db:"user_id" json:"user_id"`
	TargetType string        `db:"target_type" json:"target_type"`
	Operation  string        `db:"operation" json:"operation"`
	Data       []byte        `db:"data" json:"data"`
	Votes      int           `db:"votes" json:"votes"`
	Status     string        `db:"status" json:"status"`
	Applied    bool          `db:"applied" json:"applied"`
	Bot        bool          `db:"bot" json:"bot"`
}

type CreateEditVoteParams

type CreateEditVoteParams struct {
	EditID uuid.UUID `db:"edit_id" json:"edit_id"`
	UserID uuid.UUID `db:"user_id" json:"user_id"`
	Vote   string    `db:"vote" json:"vote"`
}

type CreateFingerprintParams

type CreateFingerprintParams struct {
	Hash      string `db:"hash" json:"hash"`
	Algorithm string `db:"algorithm" json:"algorithm"`
}

type CreateImageParams

type CreateImageParams struct {
	ID       uuid.UUID `db:"id" json:"id"`
	Url      *string   `db:"url" json:"url"`
	Width    int       `db:"width" json:"width"`
	Height   int       `db:"height" json:"height"`
	Checksum string    `db:"checksum" json:"checksum"`
}

type CreateInviteKeyParams

type CreateInviteKeyParams struct {
	ID          uuid.UUID  `db:"id" json:"id"`
	GeneratedBy uuid.UUID  `db:"generated_by" json:"generated_by"`
	Uses        *int       `db:"uses" json:"uses"`
	ExpireTime  *time.Time `db:"expire_time" json:"expire_time"`
}

type CreateOrReplaceFingerprintParams

type CreateOrReplaceFingerprintParams struct {
	FingerprintID int       `db:"fingerprint_id" json:"fingerprint_id"`
	SceneID       uuid.UUID `db:"scene_id" json:"scene_id"`
	UserID        uuid.UUID `db:"user_id" json:"user_id"`
	Duration      int       `db:"duration" json:"duration"`
	Vote          int16     `db:"vote" json:"vote"`
}

type CreatePerformerAliasesParams

type CreatePerformerAliasesParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	Alias       string    `db:"alias" json:"alias"`
}

type CreatePerformerEditParams

type CreatePerformerEditParams struct {
	EditID      uuid.UUID `db:"edit_id" json:"edit_id"`
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
}

type CreatePerformerFavoriteParams

type CreatePerformerFavoriteParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	UserID      uuid.UUID `db:"user_id" json:"user_id"`
}

type CreatePerformerImagesParams

type CreatePerformerImagesParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	ImageID     uuid.UUID `db:"image_id" json:"image_id"`
}

type CreatePerformerParams

type CreatePerformerParams struct {
	ID              uuid.UUID              `db:"id" json:"id"`
	Name            string                 `db:"name" json:"name"`
	Disambiguation  *string                `db:"disambiguation" json:"disambiguation"`
	Gender          *models.GenderEnum     `db:"gender" json:"gender"`
	Birthdate       *string                `db:"birthdate" json:"birthdate"`
	Ethnicity       *models.EthnicityEnum  `db:"ethnicity" json:"ethnicity"`
	Country         *string                `db:"country" json:"country"`
	EyeColor        *models.EyeColorEnum   `db:"eye_color" json:"eye_color"`
	HairColor       *models.HairColorEnum  `db:"hair_color" json:"hair_color"`
	Height          *int                   `db:"height" json:"height"`
	CupSize         *string                `db:"cup_size" json:"cup_size"`
	BandSize        *int                   `db:"band_size" json:"band_size"`
	HipSize         *int                   `db:"hip_size" json:"hip_size"`
	WaistSize       *int                   `db:"waist_size" json:"waist_size"`
	BreastType      *models.BreastTypeEnum `db:"breast_type" json:"breast_type"`
	CareerStartYear *int                   `db:"career_start_year" json:"career_start_year"`
	CareerEndYear   *int                   `db:"career_end_year" json:"career_end_year"`
	Deathdate       *string                `db:"deathdate" json:"deathdate"`
}

type CreatePerformerPiercingsParams

type CreatePerformerPiercingsParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	Location    *string   `db:"location" json:"location"`
	Description *string   `db:"description" json:"description"`
}

type CreatePerformerRedirectParams

type CreatePerformerRedirectParams struct {
	SourceID uuid.UUID `db:"source_id" json:"source_id"`
	TargetID uuid.UUID `db:"target_id" json:"target_id"`
}

type CreatePerformerTattoosParams

type CreatePerformerTattoosParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	Location    *string   `db:"location" json:"location"`
	Description *string   `db:"description" json:"description"`
}

type CreatePerformerURLsParams

type CreatePerformerURLsParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	Url         string    `db:"url" json:"url"`
	SiteID      uuid.UUID `db:"site_id" json:"site_id"`
}

type CreateSceneEditParams

type CreateSceneEditParams struct {
	EditID  uuid.UUID `db:"edit_id" json:"edit_id"`
	SceneID uuid.UUID `db:"scene_id" json:"scene_id"`
}

type CreateSceneFingerprintsParams

type CreateSceneFingerprintsParams struct {
	FingerprintID int       `db:"fingerprint_id" json:"fingerprint_id"`
	SceneID       uuid.UUID `db:"scene_id" json:"scene_id"`
	UserID        uuid.UUID `db:"user_id" json:"user_id"`
	Duration      int       `db:"duration" json:"duration"`
}

type CreateSceneImagesParams

type CreateSceneImagesParams struct {
	SceneID uuid.UUID `db:"scene_id" json:"scene_id"`
	ImageID uuid.UUID `db:"image_id" json:"image_id"`
}

type CreateSceneParams

type CreateSceneParams struct {
	ID             uuid.UUID     `db:"id" json:"id"`
	Title          *string       `db:"title" json:"title"`
	Details        *string       `db:"details" json:"details"`
	Date           *string       `db:"date" json:"date"`
	ProductionDate *string       `db:"production_date" json:"production_date"`
	StudioID       uuid.NullUUID `db:"studio_id" json:"studio_id"`
	Duration       *int          `db:"duration" json:"duration"`
	Director       *string       `db:"director" json:"director"`
	Code           *string       `db:"code" json:"code"`
}

type CreateScenePerformersParams

type CreateScenePerformersParams struct {
	SceneID     uuid.UUID `db:"scene_id" json:"scene_id"`
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	As          *string   `db:"as" json:"as"`
}

type CreateSceneRedirectParams

type CreateSceneRedirectParams struct {
	SourceID uuid.UUID `db:"source_id" json:"source_id"`
	TargetID uuid.UUID `db:"target_id" json:"target_id"`
}

type CreateSceneTagsParams

type CreateSceneTagsParams struct {
	SceneID uuid.UUID `db:"scene_id" json:"scene_id"`
	TagID   uuid.UUID `db:"tag_id" json:"tag_id"`
}

type CreateSceneURLsParams

type CreateSceneURLsParams struct {
	SceneID uuid.UUID `db:"scene_id" json:"scene_id"`
	Url     string    `db:"url" json:"url"`
	SiteID  uuid.UUID `db:"site_id" json:"site_id"`
}

type CreateSiteParams

type CreateSiteParams struct {
	ID          uuid.UUID `db:"id" json:"id"`
	Name        string    `db:"name" json:"name"`
	Description *string   `db:"description" json:"description"`
	Url         *string   `db:"url" json:"url"`
	Regex       *string   `db:"regex" json:"regex"`
	ValidTypes  []string  `db:"valid_types" json:"valid_types"`
}

type CreateStudioAliasesParams

type CreateStudioAliasesParams struct {
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
	Alias    string    `db:"alias" json:"alias"`
}

type CreateStudioEditParams

type CreateStudioEditParams struct {
	EditID   uuid.UUID `db:"edit_id" json:"edit_id"`
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
}

type CreateStudioFavoriteParams

type CreateStudioFavoriteParams struct {
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
	UserID   uuid.UUID `db:"user_id" json:"user_id"`
}

type CreateStudioImagesParams

type CreateStudioImagesParams struct {
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
	ImageID  uuid.UUID `db:"image_id" json:"image_id"`
}

type CreateStudioParams

type CreateStudioParams struct {
	ID             uuid.UUID     `db:"id" json:"id"`
	Name           string        `db:"name" json:"name"`
	ParentStudioID uuid.NullUUID `db:"parent_studio_id" json:"parent_studio_id"`
}

type CreateStudioRedirectParams

type CreateStudioRedirectParams struct {
	SourceID uuid.UUID `db:"source_id" json:"source_id"`
	TargetID uuid.UUID `db:"target_id" json:"target_id"`
}

type CreateStudioURLsParams

type CreateStudioURLsParams struct {
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
	Url      string    `db:"url" json:"url"`
	SiteID   uuid.UUID `db:"site_id" json:"site_id"`
}

type CreateTagAliasesParams

type CreateTagAliasesParams struct {
	TagID uuid.UUID `db:"tag_id" json:"tag_id"`
	Alias string    `db:"alias" json:"alias"`
}

type CreateTagCategoryParams

type CreateTagCategoryParams struct {
	ID          uuid.UUID `db:"id" json:"id"`
	Group       string    `db:"group" json:"group"`
	Name        string    `db:"name" json:"name"`
	Description *string   `db:"description" json:"description"`
}

type CreateTagEditParams

type CreateTagEditParams struct {
	EditID uuid.UUID `db:"edit_id" json:"edit_id"`
	TagID  uuid.UUID `db:"tag_id" json:"tag_id"`
}

type CreateTagParams

type CreateTagParams struct {
	ID          uuid.UUID     `db:"id" json:"id"`
	Name        string        `db:"name" json:"name"`
	CategoryID  uuid.NullUUID `db:"category_id" json:"category_id"`
	Description *string       `db:"description" json:"description"`
}

type CreateTagRedirectParams

type CreateTagRedirectParams struct {
	SourceID uuid.UUID `db:"source_id" json:"source_id"`
	TargetID uuid.UUID `db:"target_id" json:"target_id"`
}

type CreateUserNotificationSubscriptionsParams

type CreateUserNotificationSubscriptionsParams struct {
	UserID uuid.UUID        `db:"user_id" json:"user_id"`
	Type   NotificationType `db:"type" json:"type"`
}

type CreateUserParams

type CreateUserParams struct {
	ID           uuid.UUID     `db:"id" json:"id"`
	Name         string        `db:"name" json:"name"`
	PasswordHash string        `db:"password_hash" json:"password_hash"`
	Email        string        `db:"email" json:"email"`
	ApiKey       string        `db:"api_key" json:"api_key"`
	ApiCalls     *int          `db:"api_calls" json:"api_calls"`
	InviteTokens int           `db:"invite_tokens" json:"invite_tokens"`
	InvitedBy    uuid.NullUUID `db:"invited_by" json:"invited_by"`
}

type CreateUserRolesParams

type CreateUserRolesParams struct {
	UserID uuid.UUID `db:"user_id" json:"user_id"`
	Role   string    `db:"role" json:"role"`
}

type CreateUserTokenParams

type CreateUserTokenParams struct {
	ID        uuid.UUID `db:"id" json:"id"`
	Data      []byte    `db:"data" json:"data"`
	Type      string    `db:"type" json:"type"`
	CreatedAt time.Time `db:"created_at" json:"created_at"`
	ExpiresAt time.Time `db:"expires_at" json:"expires_at"`
}

type DBTX

type DBTX interface {
	Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
	Query(context.Context, string, ...interface{}) (pgx.Rows, error)
	QueryRow(context.Context, string, ...interface{}) pgx.Row
	CopyFrom(ctx context.Context, tableName pgx.Identifier, columnNames []string, rowSrc pgx.CopyFromSource) (int64, error)
}

type DeletePerformerFavoriteParams

type DeletePerformerFavoriteParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	UserID      uuid.UUID `db:"user_id" json:"user_id"`
}

type DeleteSceneFingerprintParams

type DeleteSceneFingerprintParams struct {
	Hash      string    `db:"hash" json:"hash"`
	Algorithm string    `db:"algorithm" json:"algorithm"`
	UserID    uuid.UUID `db:"user_id" json:"user_id"`
	SceneID   uuid.UUID `db:"scene_id" json:"scene_id"`
}

type DeleteStudioFavoriteParams

type DeleteStudioFavoriteParams struct {
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
	UserID   uuid.UUID `db:"user_id" json:"user_id"`
}

type DeleteTagAliasesByNamesParams

type DeleteTagAliasesByNamesParams struct {
	TagID   uuid.UUID `db:"tag_id" json:"tag_id"`
	Column2 []string  `db:"column_2" json:"column_2"`
}

type Draft

type Draft struct {
	ID        uuid.UUID       `db:"id" json:"id"`
	UserID    uuid.UUID       `db:"user_id" json:"user_id"`
	Type      string          `db:"type" json:"type"`
	Data      json.RawMessage `db:"data" json:"data"`
	CreatedAt time.Time       `db:"created_at" json:"created_at"`
}

type Edit

type Edit struct {
	ID          uuid.UUID     `db:"id" json:"id"`
	UserID      uuid.NullUUID `db:"user_id" json:"user_id"`
	Operation   string        `db:"operation" json:"operation"`
	TargetType  string        `db:"target_type" json:"target_type"`
	Data        []byte        `db:"data" json:"data"`
	Votes       int           `db:"votes" json:"votes"`
	Status      string        `db:"status" json:"status"`
	Applied     bool          `db:"applied" json:"applied"`
	CreatedAt   time.Time     `db:"created_at" json:"created_at"`
	UpdatedAt   *time.Time    `db:"updated_at" json:"updated_at"`
	ClosedAt    *time.Time    `db:"closed_at" json:"closed_at"`
	Bot         bool          `db:"bot" json:"bot"`
	UpdateCount int           `db:"update_count" json:"update_count"`
}

type EditComment

type EditComment struct {
	ID        uuid.UUID     `db:"id" json:"id"`
	EditID    uuid.UUID     `db:"edit_id" json:"edit_id"`
	UserID    uuid.NullUUID `db:"user_id" json:"user_id"`
	CreatedAt time.Time     `db:"created_at" json:"created_at"`
	Text      string        `db:"text" json:"text"`
}

type EditVote

type EditVote struct {
	EditID    uuid.UUID `db:"edit_id" json:"edit_id"`
	UserID    uuid.UUID `db:"user_id" json:"user_id"`
	CreatedAt time.Time `db:"created_at" json:"created_at"`
	Vote      string    `db:"vote" json:"vote"`
}

type FindCompletedEditsParams

type FindCompletedEditsParams struct {
	VotingPeriod        interface{} `db:"voting_period" json:"voting_period"`
	MinimumVotes        int         `db:"minimum_votes" json:"minimum_votes"`
	MinimumVotingPeriod interface{} `db:"minimum_voting_period" json:"minimum_voting_period"`
}

type FindExistingPerformersParams

type FindExistingPerformersParams struct {
	Name           *string  `db:"name" json:"name"`
	Disambiguation *string  `db:"disambiguation" json:"disambiguation"`
	Urls           []string `db:"urls" json:"urls"`
}

type FindExistingScenesParams

type FindExistingScenesParams struct {
	Title    *string       `db:"title" json:"title"`
	StudioID uuid.NullUUID `db:"studio_id" json:"studio_id"`
	Hashes   []string      `db:"hashes" json:"hashes"`
}

type FindMergeIDsByPerformerIdsRow

type FindMergeIDsByPerformerIdsRow struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	MergeID     uuid.UUID `db:"merge_id" json:"merge_id"`
}

type FindMergeIDsBySourcePerformerIdsRow

type FindMergeIDsBySourcePerformerIdsRow struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	MergeID     uuid.UUID `db:"merge_id" json:"merge_id"`
}

type FindNotificationsByUserParams added in v0.7.5

type FindNotificationsByUserParams struct {
	UserID uuid.UUID            `db:"user_id" json:"user_id"`
	Limit  int32                `db:"limit" json:"limit"`
	Offset int32                `db:"offset" json:"offset"`
	Type   NullNotificationType `db:"type" json:"type"`
}

type FindPendingPerformerCreationParams

type FindPendingPerformerCreationParams struct {
	Name *string  `db:"name" json:"name"`
	Urls []string `db:"urls" json:"urls"`
}

type FindPendingSceneCreationParams

type FindPendingSceneCreationParams struct {
	Title    *string       `db:"title" json:"title"`
	StudioID uuid.NullUUID `db:"studio_id" json:"studio_id"`
	Hashes   []string      `db:"hashes" json:"hashes"`
}

type FindPerformerFavoritesByIdsParams

type FindPerformerFavoritesByIdsParams struct {
	PerformerIds []uuid.UUID `db:"performer_ids" json:"performer_ids"`
	UserID       uuid.UUID   `db:"user_id" json:"user_id"`
}

type FindPerformerFavoritesByIdsRow

type FindPerformerFavoritesByIdsRow struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	IsFavorite  bool      `db:"is_favorite" json:"is_favorite"`
}

type FindPerformersByURLParams

type FindPerformersByURLParams struct {
	Url   *string `db:"url" json:"url"`
	Limit int32   `db:"limit" json:"limit"`
}

type FindSceneAppearancesByIdsRow

type FindSceneAppearancesByIdsRow struct {
	SceneID     uuid.UUID `db:"scene_id" json:"scene_id"`
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	As          *string   `db:"as" json:"as"`
}

type FindSceneByURLParams

type FindSceneByURLParams struct {
	Url   *string `db:"url" json:"url"`
	Limit int32   `db:"limit" json:"limit"`
}

type FindScenesByFingerprintParams

type FindScenesByFingerprintParams struct {
	Hash      string `db:"hash" json:"hash"`
	Algorithm string `db:"algorithm" json:"algorithm"`
}

type FindScenesByFullFingerprintsParams

type FindScenesByFullFingerprintsParams struct {
	Phashes  []int64  `db:"phashes" json:"phashes"`
	Distance int      `db:"distance" json:"distance"`
	Hashes   []string `db:"hashes" json:"hashes"`
}

type FindScenesByFullFingerprintsWithHashParams

type FindScenesByFullFingerprintsWithHashParams struct {
	Phashes  []int64  `db:"phashes" json:"phashes"`
	Distance int      `db:"distance" json:"distance"`
	Hashes   []string `db:"hashes" json:"hashes"`
}

type FindScenesByFullFingerprintsWithHashRow

type FindScenesByFullFingerprintsWithHashRow struct {
	Scene Scene  `db:"scene" json:"scene"`
	Hash  string `db:"hash" json:"hash"`
}

type FindStudioFavoritesByIdsParams

type FindStudioFavoritesByIdsParams struct {
	StudioIds []uuid.UUID `db:"studio_ids" json:"studio_ids"`
	UserID    uuid.UUID   `db:"user_id" json:"user_id"`
}

type FindStudioFavoritesByIdsRow

type FindStudioFavoritesByIdsRow struct {
	StudioID   uuid.UUID `db:"studio_id" json:"studio_id"`
	IsFavorite bool      `db:"is_favorite" json:"is_favorite"`
}

type FindUnreadNotificationsByUserParams added in v0.7.5

type FindUnreadNotificationsByUserParams struct {
	UserID uuid.UUID            `db:"user_id" json:"user_id"`
	Limit  int32                `db:"limit" json:"limit"`
	Offset int32                `db:"offset" json:"offset"`
	Type   NullNotificationType `db:"type" json:"type"`
}

type Fingerprint

type Fingerprint struct {
	ID        int    `db:"id" json:"id"`
	Hash      string `db:"hash" json:"hash"`
	Algorithm string `db:"algorithm" json:"algorithm"`
}

type GetAllFingerprintsParams

type GetAllFingerprintsParams struct {
	CurrentUserID uuid.UUID     `db:"current_user_id" json:"current_user_id"`
	SceneIds      []uuid.UUID   `db:"scene_ids" json:"scene_ids"`
	FilterUserID  uuid.NullUUID `db:"filter_user_id" json:"filter_user_id"`
}

type GetAllFingerprintsRow

type GetAllFingerprintsRow struct {
	SceneID        uuid.UUID `db:"scene_id" json:"scene_id"`
	Hash           string    `db:"hash" json:"hash"`
	Algorithm      string    `db:"algorithm" json:"algorithm"`
	Duration       int       `db:"duration" json:"duration"`
	Submissions    int64     `db:"submissions" json:"submissions"`
	Reports        int64     `db:"reports" json:"reports"`
	NetSubmissions int64     `db:"net_submissions" json:"net_submissions"`
	CreatedAt      time.Time `db:"created_at" json:"created_at"`
	UpdatedAt      time.Time `db:"updated_at" json:"updated_at"`
	UserSubmitted  bool      `db:"user_submitted" json:"user_submitted"`
	UserReported   bool      `db:"user_reported" json:"user_reported"`
}

type GetAllSceneFingerprintsRow

type GetAllSceneFingerprintsRow struct {
	Algorithm string    `db:"algorithm" json:"algorithm"`
	Hash      string    `db:"hash" json:"hash"`
	Duration  int       `db:"duration" json:"duration"`
	CreatedAt time.Time `db:"created_at" json:"created_at"`
	UserID    uuid.UUID `db:"user_id" json:"user_id"`
}

type GetEditPerformerPiercingsRow

type GetEditPerformerPiercingsRow struct {
	Location    *string `db:"location" json:"location"`
	Description *string `db:"description" json:"description"`
}

type GetEditPerformerTattoosRow

type GetEditPerformerTattoosRow struct {
	Location    *string `db:"location" json:"location"`
	Description *string `db:"description" json:"description"`
}

type GetEditTargetIDRow

type GetEditTargetIDRow struct {
	ID         uuid.UUID `db:"id" json:"id"`
	TargetType string    `db:"target_type" json:"target_type"`
}

type GetFingerprintParams

type GetFingerprintParams struct {
	Hash      string `db:"hash" json:"hash"`
	Algorithm string `db:"algorithm" json:"algorithm"`
}

type GetMergedPerformersForEditRow

type GetMergedPerformersForEditRow struct {
	Performer Performer `db:"performer" json:"performer"`
	As        *string   `db:"as" json:"as"`
}

type GetMergedURLsForEditRow

type GetMergedURLsForEditRow struct {
	Url    string    `db:"url" json:"url"`
	SiteID uuid.UUID `db:"site_id" json:"site_id"`
}

type GetPerformerPiercingsRow

type GetPerformerPiercingsRow struct {
	Location    *string `db:"location" json:"location"`
	Description *string `db:"description" json:"description"`
}

type GetPerformerTattoosRow

type GetPerformerTattoosRow struct {
	Location    *string `db:"location" json:"location"`
	Description *string `db:"description" json:"description"`
}

type GetPerformerURLsRow

type GetPerformerURLsRow struct {
	Url    string    `db:"url" json:"url"`
	SiteID uuid.UUID `db:"site_id" json:"site_id"`
}

type GetScenePerformersRow

type GetScenePerformersRow struct {
	Performer Performer `db:"performer" json:"performer"`
	As        *string   `db:"as" json:"as"`
}

type GetSceneURLsRow

type GetSceneURLsRow struct {
	Url    string    `db:"url" json:"url"`
	SiteID uuid.UUID `db:"site_id" json:"site_id"`
}

type GetStudiosByPerformerRow

type GetStudiosByPerformerRow struct {
	Studio     Studio `db:"studio" json:"studio"`
	SceneCount int64  `db:"scene_count" json:"scene_count"`
}

type Image

type Image struct {
	ID       uuid.UUID `db:"id" json:"id"`
	Url      *string   `db:"url" json:"url"`
	Width    int       `db:"width" json:"width"`
	Height   int       `db:"height" json:"height"`
	Checksum string    `db:"checksum" json:"checksum"`
}

type InviteKey

type InviteKey struct {
	ID          uuid.UUID  `db:"id" json:"id"`
	GeneratedBy uuid.UUID  `db:"generated_by" json:"generated_by"`
	GeneratedAt time.Time  `db:"generated_at" json:"generated_at"`
	Uses        *int       `db:"uses" json:"uses"`
	ExpireTime  *time.Time `db:"expire_time" json:"expire_time"`
}

type MarkNotificationReadParams

type MarkNotificationReadParams struct {
	UserID uuid.UUID        `db:"user_id" json:"user_id"`
	Type   NotificationType `db:"type" json:"type"`
	ID     uuid.UUID        `db:"id" json:"id"`
}

type Notification

type Notification struct {
	UserID    uuid.UUID        `db:"user_id" json:"user_id"`
	Type      NotificationType `db:"type" json:"type"`
	ID        uuid.UUID        `db:"id" json:"id"`
	CreatedAt time.Time        `db:"created_at" json:"created_at"`
	ReadAt    *time.Time       `db:"read_at" json:"read_at"`
}

type NotificationType

type NotificationType string
const (
	NotificationTypeFAVORITEPERFORMERSCENE NotificationType = "FAVORITE_PERFORMER_SCENE"
	NotificationTypeFAVORITEPERFORMEREDIT  NotificationType = "FAVORITE_PERFORMER_EDIT"
	NotificationTypeFAVORITESTUDIOSCENE    NotificationType = "FAVORITE_STUDIO_SCENE"
	NotificationTypeFAVORITESTUDIOEDIT     NotificationType = "FAVORITE_STUDIO_EDIT"
	NotificationTypeCOMMENTOWNEDIT         NotificationType = "COMMENT_OWN_EDIT"
	NotificationTypeDOWNVOTEOWNEDIT        NotificationType = "DOWNVOTE_OWN_EDIT"
	NotificationTypeFAILEDOWNEDIT          NotificationType = "FAILED_OWN_EDIT"
	NotificationTypeCOMMENTCOMMENTEDEDIT   NotificationType = "COMMENT_COMMENTED_EDIT"
	NotificationTypeCOMMENTVOTEDEDIT       NotificationType = "COMMENT_VOTED_EDIT"
	NotificationTypeUPDATEDEDIT            NotificationType = "UPDATED_EDIT"
	NotificationTypeFINGERPRINTEDSCENEEDIT NotificationType = "FINGERPRINTED_SCENE_EDIT"
)

func (*NotificationType) Scan

func (e *NotificationType) Scan(src interface{}) error

type NullNotificationType

type NullNotificationType struct {
	NotificationType NotificationType `json:"notification_type"`
	Valid            bool             `json:"valid"` // Valid is true if NotificationType is not NULL
}

func (*NullNotificationType) Scan

func (ns *NullNotificationType) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullNotificationType) Value

func (ns NullNotificationType) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type Performer

type Performer struct {
	ID              uuid.UUID              `db:"id" json:"id"`
	Name            string                 `db:"name" json:"name"`
	Disambiguation  *string                `db:"disambiguation" json:"disambiguation"`
	Gender          *models.GenderEnum     `db:"gender" json:"gender"`
	Ethnicity       *models.EthnicityEnum  `db:"ethnicity" json:"ethnicity"`
	Country         *string                `db:"country" json:"country"`
	EyeColor        *models.EyeColorEnum   `db:"eye_color" json:"eye_color"`
	HairColor       *models.HairColorEnum  `db:"hair_color" json:"hair_color"`
	Height          *int                   `db:"height" json:"height"`
	CupSize         *string                `db:"cup_size" json:"cup_size"`
	BandSize        *int                   `db:"band_size" json:"band_size"`
	HipSize         *int                   `db:"hip_size" json:"hip_size"`
	WaistSize       *int                   `db:"waist_size" json:"waist_size"`
	BreastType      *models.BreastTypeEnum `db:"breast_type" json:"breast_type"`
	CareerStartYear *int                   `db:"career_start_year" json:"career_start_year"`
	CareerEndYear   *int                   `db:"career_end_year" json:"career_end_year"`
	CreatedAt       time.Time              `db:"created_at" json:"created_at"`
	UpdatedAt       time.Time              `db:"updated_at" json:"updated_at"`
	Deleted         bool                   `db:"deleted" json:"deleted"`
	Birthdate       *string                `db:"birthdate" json:"birthdate"`
	Deathdate       *string                `db:"deathdate" json:"deathdate"`
}

type PerformerAlias

type PerformerAlias struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	Alias       string    `db:"alias" json:"alias"`
}

type PerformerEdit

type PerformerEdit struct {
	EditID      uuid.UUID `db:"edit_id" json:"edit_id"`
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
}

type PerformerFavorite

type PerformerFavorite struct {
	PerformerID uuid.UUID  `db:"performer_id" json:"performer_id"`
	UserID      uuid.UUID  `db:"user_id" json:"user_id"`
	CreatedAt   *time.Time `db:"created_at" json:"created_at"`
}

type PerformerImage

type PerformerImage struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	ImageID     uuid.UUID `db:"image_id" json:"image_id"`
}

type PerformerPiercing

type PerformerPiercing struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	Location    *string   `db:"location" json:"location"`
	Description *string   `db:"description" json:"description"`
}

type PerformerRedirect

type PerformerRedirect struct {
	SourceID uuid.UUID `db:"source_id" json:"source_id"`
	TargetID uuid.UUID `db:"target_id" json:"target_id"`
}

type PerformerTattoo

type PerformerTattoo struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	Location    *string   `db:"location" json:"location"`
	Description *string   `db:"description" json:"description"`
}

type PerformerUrl

type PerformerUrl struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	Url         string    `db:"url" json:"url"`
	SiteID      uuid.UUID `db:"site_id" json:"site_id"`
}

type Querier

type Querier interface {
	CancelUserEdits(ctx context.Context, userID uuid.NullUUID) error
	ClearScenePerformerAlias(ctx context.Context, arg ClearScenePerformerAliasParams) error
	CountNotificationsByUser(ctx context.Context, arg CountNotificationsByUserParams) (int64, error)
	CountScenesByPerformer(ctx context.Context, performerID uuid.UUID) (int64, error)
	CountUserEditsByStatus(ctx context.Context, userID uuid.NullUUID) ([]CountUserEditsByStatusRow, error)
	CountUsers(ctx context.Context) (int64, error)
	CountVotesByType(ctx context.Context, userID uuid.UUID) ([]CountVotesByTypeRow, error)
	// Draft queries
	CreateDraft(ctx context.Context, arg CreateDraftParams) (Draft, error)
	// Edit queries
	CreateEdit(ctx context.Context, arg CreateEditParams) (Edit, error)
	// Edit comments
	CreateEditComment(ctx context.Context, arg CreateEditCommentParams) (EditComment, error)
	// Edit votes
	CreateEditVote(ctx context.Context, arg CreateEditVoteParams) error
	// Fingerprint queries (normalized schema)
	CreateFingerprint(ctx context.Context, arg CreateFingerprintParams) (Fingerprint, error)
	// Image queries
	CreateImage(ctx context.Context, arg CreateImageParams) (Image, error)
	// Invite key queries
	CreateInviteKey(ctx context.Context, arg CreateInviteKeyParams) (InviteKey, error)
	CreateOrReplaceFingerprint(ctx context.Context, arg CreateOrReplaceFingerprintParams) error
	// Performer queries
	CreatePerformer(ctx context.Context, arg CreatePerformerParams) (Performer, error)
	CreatePerformerAliases(ctx context.Context, arg []CreatePerformerAliasesParams) (int64, error)
	CreatePerformerEdit(ctx context.Context, arg CreatePerformerEditParams) error
	CreatePerformerFavorite(ctx context.Context, arg CreatePerformerFavoriteParams) error
	CreatePerformerImages(ctx context.Context, arg []CreatePerformerImagesParams) (int64, error)
	CreatePerformerPiercings(ctx context.Context, arg []CreatePerformerPiercingsParams) (int64, error)
	// Performer redirects
	CreatePerformerRedirect(ctx context.Context, arg CreatePerformerRedirectParams) error
	CreatePerformerTattoos(ctx context.Context, arg []CreatePerformerTattoosParams) (int64, error)
	CreatePerformerURLs(ctx context.Context, arg []CreatePerformerURLsParams) (int64, error)
	// Scene queries
	CreateScene(ctx context.Context, arg CreateSceneParams) (Scene, error)
	CreateSceneEdit(ctx context.Context, arg CreateSceneEditParams) error
	CreateSceneFingerprints(ctx context.Context, arg []CreateSceneFingerprintsParams) (int64, error)
	CreateSceneImages(ctx context.Context, arg []CreateSceneImagesParams) (int64, error)
	// Scene performers
	CreateScenePerformers(ctx context.Context, arg []CreateScenePerformersParams) (int64, error)
	// Scene redirects
	CreateSceneRedirect(ctx context.Context, arg CreateSceneRedirectParams) error
	// Scene tags management
	CreateSceneTags(ctx context.Context, arg []CreateSceneTagsParams) (int64, error)
	// Scene URLs
	CreateSceneURLs(ctx context.Context, arg []CreateSceneURLsParams) (int64, error)
	// Site queries
	CreateSite(ctx context.Context, arg CreateSiteParams) (Site, error)
	// Studio queries
	CreateStudio(ctx context.Context, arg CreateStudioParams) (Studio, error)
	// Studio aliases
	CreateStudioAliases(ctx context.Context, arg []CreateStudioAliasesParams) (int64, error)
	CreateStudioEdit(ctx context.Context, arg CreateStudioEditParams) error
	// Studio favorites
	CreateStudioFavorite(ctx context.Context, arg CreateStudioFavoriteParams) error
	// Studio images
	CreateStudioImages(ctx context.Context, arg []CreateStudioImagesParams) (int64, error)
	// Studio redirects
	CreateStudioRedirect(ctx context.Context, arg CreateStudioRedirectParams) error
	// Studio URLs
	CreateStudioURLs(ctx context.Context, arg []CreateStudioURLsParams) (int64, error)
	// Tag queries
	CreateTag(ctx context.Context, arg CreateTagParams) (Tag, error)
	// Tag aliases
	CreateTagAliases(ctx context.Context, arg []CreateTagAliasesParams) (int64, error)
	// Tag category queries
	CreateTagCategory(ctx context.Context, arg CreateTagCategoryParams) (TagCategory, error)
	CreateTagEdit(ctx context.Context, arg CreateTagEditParams) error
	// Tag redirects
	CreateTagRedirect(ctx context.Context, arg CreateTagRedirectParams) error
	// User queries
	CreateUser(ctx context.Context, arg CreateUserParams) (User, error)
	// User notification subscriptions
	CreateUserNotificationSubscriptions(ctx context.Context, arg []CreateUserNotificationSubscriptionsParams) (int64, error)
	// User roles
	CreateUserRoles(ctx context.Context, arg []CreateUserRolesParams) (int64, error)
	// User token queries
	CreateUserToken(ctx context.Context, arg CreateUserTokenParams) (UserToken, error)
	DeleteDraft(ctx context.Context, id uuid.UUID) error
	DeleteEdit(ctx context.Context, id uuid.UUID) error
	DeleteExpiredDrafts(ctx context.Context, dollar_1 interface{}) error
	DeleteExpiredUserTokens(ctx context.Context) error
	DeleteImage(ctx context.Context, id uuid.UUID) error
	DeleteInviteKey(ctx context.Context, id uuid.UUID) error
	DeletePerformer(ctx context.Context, id uuid.UUID) error
	// Performer aliases
	DeletePerformerAliases(ctx context.Context, performerID uuid.UUID) error
	DeletePerformerFavorite(ctx context.Context, arg DeletePerformerFavoriteParams) error
	// Performer favorites
	DeletePerformerFavorites(ctx context.Context, performerID uuid.UUID) error
	DeletePerformerImages(ctx context.Context, performerID uuid.UUID) error
	// Performer piercings
	DeletePerformerPiercings(ctx context.Context, performerID uuid.UUID) error
	DeletePerformerScenes(ctx context.Context, performerID uuid.UUID) error
	// Performer tattoos
	DeletePerformerTattoos(ctx context.Context, performerID uuid.UUID) error
	// Performer URLs
	DeletePerformerURLs(ctx context.Context, performerID uuid.UUID) error
	DeleteScene(ctx context.Context, id uuid.UUID) error
	DeleteSceneFingerprint(ctx context.Context, arg DeleteSceneFingerprintParams) error
	DeleteSceneFingerprintsByScene(ctx context.Context, sceneID uuid.UUID) error
	// Scene images
	DeleteSceneImages(ctx context.Context, sceneID uuid.UUID) error
	DeleteScenePerformers(ctx context.Context, sceneID uuid.UUID) error
	DeleteSceneStudios(ctx context.Context, studioID uuid.NullUUID) error
	DeleteSceneTagsByScene(ctx context.Context, sceneID uuid.UUID) error
	DeleteSceneTagsByTag(ctx context.Context, tagID uuid.UUID) error
	DeleteSceneURLs(ctx context.Context, sceneID uuid.UUID) error
	DeleteSite(ctx context.Context, id uuid.UUID) error
	DeleteStudio(ctx context.Context, id uuid.UUID) error
	DeleteStudioAliases(ctx context.Context, studioID uuid.UUID) error
	DeleteStudioFavorite(ctx context.Context, arg DeleteStudioFavoriteParams) error
	DeleteStudioFavorites(ctx context.Context, studioID uuid.UUID) error
	DeleteStudioImages(ctx context.Context, studioID uuid.UUID) error
	DeleteStudioURLs(ctx context.Context, studioID uuid.UUID) error
	DeleteTag(ctx context.Context, id uuid.UUID) error
	DeleteTagAliases(ctx context.Context, tagID uuid.UUID) error
	DeleteTagAliasesByNames(ctx context.Context, arg DeleteTagAliasesByNamesParams) error
	DeleteTagCategory(ctx context.Context, id uuid.UUID) error
	DeleteUser(ctx context.Context, id uuid.UUID) error
	DeleteUserNotificationSubscriptions(ctx context.Context, userID uuid.UUID) error
	DeleteUserRoles(ctx context.Context, userID uuid.UUID) error
	DeleteUserToken(ctx context.Context, id uuid.UUID) error
	DestroyExpiredInvites(ctx context.Context) error
	DestroyExpiredNotifications(ctx context.Context) error
	FindActiveInviteKeysForUser(ctx context.Context, generatedBy uuid.UUID) ([]InviteKey, error)
	// Returns pending edits that fulfill one of the criteria for being closed:
	// * The full voting period has passed
	// * The minimum voting period has passed, and the number of votes has crossed the voting threshold.
	// The latter only applies for destructive edits. Non-destructive edits get auto-applied when sufficient votes are cast.
	FindCompletedEdits(ctx context.Context, arg FindCompletedEditsParams) ([]Edit, error)
	FindDraft(ctx context.Context, id uuid.UUID) (Draft, error)
	FindDraftsByUser(ctx context.Context, userID uuid.UUID) ([]Draft, error)
	FindEdit(ctx context.Context, id uuid.UUID) (Edit, error)
	FindExistingPerformers(ctx context.Context, arg FindExistingPerformersParams) ([]Performer, error)
	FindExistingScenes(ctx context.Context, arg FindExistingScenesParams) ([]Scene, error)
	FindImage(ctx context.Context, id uuid.UUID) (Image, error)
	FindImageByChecksum(ctx context.Context, checksum string) (Image, error)
	FindImageIdsByPerformerIds(ctx context.Context, dollar_1 []uuid.UUID) ([]PerformerImage, error)
	FindImageIdsBySceneIds(ctx context.Context, dollar_1 []uuid.UUID) ([]SceneImage, error)
	FindImageIdsByStudioIds(ctx context.Context, dollar_1 []uuid.UUID) ([]StudioImage, error)
	FindImagesByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Image, error)
	FindImagesBySceneID(ctx context.Context, id uuid.UUID) ([]Image, error)
	FindImagesByStudioID(ctx context.Context, id uuid.UUID) ([]Image, error)
	FindInviteKey(ctx context.Context, id uuid.UUID) (InviteKey, error)
	// Find merge target IDs for performers (for merges where these are sources)
	FindMergeIDsByPerformerIds(ctx context.Context, performerIds []uuid.UUID) ([]FindMergeIDsByPerformerIdsRow, error)
	// Find merge source IDs for performers (for merges where these are targets)
	FindMergeIDsBySourcePerformerIds(ctx context.Context, performerIds []uuid.UUID) ([]FindMergeIDsBySourcePerformerIdsRow, error)
	// Notification queries
	FindNotificationsByUser(ctx context.Context, arg FindNotificationsByUserParams) ([]Notification, error)
	FindPendingPerformerCreation(ctx context.Context, arg FindPendingPerformerCreationParams) ([]Edit, error)
	FindPendingSceneCreation(ctx context.Context, arg FindPendingSceneCreationParams) ([]Edit, error)
	FindPerformer(ctx context.Context, id uuid.UUID) (Performer, error)
	// Get aliases for multiple performers
	FindPerformerAliasesByIds(ctx context.Context, performerIds []uuid.UUID) ([]PerformerAlias, error)
	FindPerformerByAlias(ctx context.Context, upper interface{}) (Performer, error)
	FindPerformerByName(ctx context.Context, upper interface{}) (Performer, error)
	// Check favorite status for multiple performers for a specific user
	FindPerformerFavoritesByIds(ctx context.Context, arg FindPerformerFavoritesByIdsParams) ([]FindPerformerFavoritesByIdsRow, error)
	// Get piercings for multiple performers
	FindPerformerPiercingsByIds(ctx context.Context, performerIds []uuid.UUID) ([]PerformerPiercing, error)
	// Get tattoos for multiple performers
	FindPerformerTattoosByIds(ctx context.Context, performerIds []uuid.UUID) ([]PerformerTattoo, error)
	// Get URLs for multiple performers
	FindPerformerUrlsByIds(ctx context.Context, performerIds []uuid.UUID) ([]PerformerUrl, error)
	FindPerformerWithRedirect(ctx context.Context, id uuid.UUID) ([]Performer, error)
	FindPerformersByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Performer, error)
	FindPerformersByURL(ctx context.Context, arg FindPerformersByURLParams) ([]Performer, error)
	FindScene(ctx context.Context, id uuid.UUID) (Scene, error)
	// Get performer appearances for multiple scenes
	FindSceneAppearancesByIds(ctx context.Context, sceneIds []uuid.UUID) ([]FindSceneAppearancesByIdsRow, error)
	FindSceneByURL(ctx context.Context, arg FindSceneByURLParams) ([]Scene, error)
	// Get URLs for multiple scenes
	FindSceneUrlsByIds(ctx context.Context, sceneIds []uuid.UUID) ([]SceneUrl, error)
	FindScenesByFingerprint(ctx context.Context, arg FindScenesByFingerprintParams) ([]Scene, error)
	// Scene fingerprints (use fingerprint.sql for most fingerprint operations)
	FindScenesByFingerprints(ctx context.Context, fingerprints []string) ([]Scene, error)
	FindScenesByFullFingerprints(ctx context.Context, arg FindScenesByFullFingerprintsParams) ([]Scene, error)
	FindScenesByFullFingerprintsWithHash(ctx context.Context, arg FindScenesByFullFingerprintsWithHashParams) ([]FindScenesByFullFingerprintsWithHashRow, error)
	FindSitesByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Site, error)
	FindStudio(ctx context.Context, id uuid.UUID) (Studio, error)
	// Get aliases for multiple studios
	FindStudioAliasesByIds(ctx context.Context, studioIds []uuid.UUID) ([]StudioAlias, error)
	FindStudioByAlias(ctx context.Context, upper interface{}) (Studio, error)
	FindStudioByName(ctx context.Context, upper interface{}) (Studio, error)
	// Check favorite status for multiple studios for a specific user
	FindStudioFavoritesByIds(ctx context.Context, arg FindStudioFavoritesByIdsParams) ([]FindStudioFavoritesByIdsRow, error)
	// Get URLs for multiple studios
	FindStudioUrlsByIds(ctx context.Context, studioIds []uuid.UUID) ([]StudioUrl, error)
	FindStudioWithRedirect(ctx context.Context, id uuid.UUID) (Studio, error)
	FindTag(ctx context.Context, id uuid.UUID) (Tag, error)
	FindTagByAlias(ctx context.Context, upper interface{}) (Tag, error)
	FindTagByName(ctx context.Context, upper interface{}) (Tag, error)
	FindTagByNameOrAlias(ctx context.Context, lower string) (Tag, error)
	FindTagCategory(ctx context.Context, id uuid.UUID) (TagCategory, error)
	// Bulk query to find tag IDs for multiple scene IDs
	FindTagIdsBySceneIds(ctx context.Context, sceneIds []uuid.UUID) ([]SceneTag, error)
	FindTagWithRedirect(ctx context.Context, id uuid.UUID) ([]Tag, error)
	FindTagsByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Tag, error)
	FindTagsBySceneID(ctx context.Context, sceneID uuid.UUID) ([]Tag, error)
	FindUnreadNotificationsByUser(ctx context.Context, arg FindUnreadNotificationsByUserParams) ([]Notification, error)
	FindUnusedImages(ctx context.Context) ([]Image, error)
	FindUser(ctx context.Context, id uuid.UUID) (User, error)
	FindUserByEmail(ctx context.Context, upper interface{}) (User, error)
	FindUserByName(ctx context.Context, name string) (User, error)
	FindUserToken(ctx context.Context, id uuid.UUID) (UserToken, error)
	FindUserTokensByEmail(ctx context.Context, dollar_1 string) ([]UserToken, error)
	FindUserTokensByInviteKey(ctx context.Context, dollar_1 uuid.UUID) ([]UserToken, error)
	// Get all fingerprints for multiple scenes with aggregated vote data
	// When onlySubmitted is true, pass the actual user ID, when false pass NULL
	GetAllFingerprints(ctx context.Context, arg GetAllFingerprintsParams) ([]GetAllFingerprintsRow, error)
	GetAllSceneFingerprints(ctx context.Context, sceneID uuid.UUID) ([]GetAllSceneFingerprintsRow, error)
	GetAllTagCategories(ctx context.Context) ([]TagCategory, error)
	GetChildStudios(ctx context.Context, parentStudioID uuid.NullUUID) ([]Studio, error)
	GetEditComments(ctx context.Context, editID uuid.UUID) ([]EditComment, error)
	GetEditCommentsByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]EditComment, error)
	GetEditPerformerAliases(ctx context.Context, id uuid.UUID) ([]string, error)
	GetEditPerformerPiercings(ctx context.Context, id uuid.UUID) ([]GetEditPerformerPiercingsRow, error)
	GetEditPerformerTattoos(ctx context.Context, id uuid.UUID) ([]GetEditPerformerTattoosRow, error)
	GetEditTargetID(ctx context.Context, id uuid.UUID) (GetEditTargetIDRow, error)
	GetEditVotes(ctx context.Context, editID uuid.UUID) ([]EditVote, error)
	GetEditsByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Edit, error)
	GetEditsByPerformer(ctx context.Context, performerID uuid.UUID) ([]Edit, error)
	GetEditsByScene(ctx context.Context, sceneID uuid.UUID) ([]Edit, error)
	GetEditsByStudio(ctx context.Context, studioID uuid.UUID) ([]Edit, error)
	GetEditsByTag(ctx context.Context, tagID uuid.UUID) ([]Edit, error)
	GetFingerprint(ctx context.Context, arg GetFingerprintParams) (Fingerprint, error)
	// Gets current images for target entity and merges with edit's added_images/removed_images
	GetImagesForEdit(ctx context.Context, id uuid.UUID) ([]Image, error)
	// Gets current performers for target entity and merges with edit's added_performers/removed_performers
	GetMergedPerformersForEdit(ctx context.Context, id uuid.UUID) ([]GetMergedPerformersForEditRow, error)
	// Gets current aliases for target studio entity and merges with edit's added_aliases/removed_aliases
	GetMergedStudioAliasesForEdit(ctx context.Context, id uuid.UUID) ([]string, error)
	// Gets current aliases for target tag entity and merges with edit's added_aliases/removed_aliases
	GetMergedTagAliasesForEdit(ctx context.Context, id uuid.UUID) ([]string, error)
	// Gets current tags for target entity and merges with edit's added_tags/removed_tags
	GetMergedTagsForEdit(ctx context.Context, id uuid.UUID) ([]Tag, error)
	// URL merging queries for edits
	// result: URL
	// Gets current URLs for target entity and merges with edit's added_urls/removed_urls
	GetMergedURLsForEdit(ctx context.Context, id uuid.UUID) ([]GetMergedURLsForEditRow, error)
	GetPerformerAliases(ctx context.Context, performerID uuid.UUID) ([]string, error)
	// Performer images
	GetPerformerImages(ctx context.Context, performerID uuid.UUID) ([]Image, error)
	GetPerformerPiercings(ctx context.Context, performerID uuid.UUID) ([]GetPerformerPiercingsRow, error)
	GetPerformerTattoos(ctx context.Context, performerID uuid.UUID) ([]GetPerformerTattoosRow, error)
	GetPerformerURLs(ctx context.Context, performerID uuid.UUID) ([]GetPerformerURLsRow, error)
	GetScenePerformers(ctx context.Context, sceneID uuid.UUID) ([]GetScenePerformersRow, error)
	GetSceneTags(ctx context.Context, sceneID uuid.UUID) ([]Tag, error)
	GetSceneURLs(ctx context.Context, sceneID uuid.UUID) ([]GetSceneURLsRow, error)
	GetScenes(ctx context.Context, dollar_1 []uuid.UUID) ([]Scene, error)
	GetSite(ctx context.Context, id uuid.UUID) (Site, error)
	GetStudioAliases(ctx context.Context, studioID uuid.UUID) ([]string, error)
	GetStudioImages(ctx context.Context, studioID uuid.UUID) ([]uuid.UUID, error)
	GetStudioURLs(ctx context.Context, studioID uuid.UUID) ([]StudioUrl, error)
	GetStudios(ctx context.Context, dollar_1 []uuid.UUID) ([]Studio, error)
	GetStudiosByPerformer(ctx context.Context, performerID uuid.UUID) ([]GetStudiosByPerformerRow, error)
	GetTagAliases(ctx context.Context, tagID uuid.UUID) ([]string, error)
	GetTagCategoriesByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]TagCategory, error)
	GetUserNotificationSubscriptions(ctx context.Context, userID uuid.UUID) ([]NotificationType, error)
	GetUserRoles(ctx context.Context, userID uuid.UUID) ([]string, error)
	InviteKeyUsed(ctx context.Context, id uuid.UUID) (*int, error)
	IsImageUnused(ctx context.Context, id uuid.UUID) (bool, error)
	MarkAllNotificationsRead(ctx context.Context, userID uuid.UUID) error
	MarkNotificationRead(ctx context.Context, arg MarkNotificationReadParams) error
	ReassignPerformerAliases(ctx context.Context, arg ReassignPerformerAliasesParams) error
	ReassignPerformerFavorites(ctx context.Context, arg ReassignPerformerFavoritesParams) error
	ReassignStudioFavorites(ctx context.Context, arg ReassignStudioFavoritesParams) error
	ResetVotes(ctx context.Context, editID uuid.UUID) error
	SearchPerformers(ctx context.Context, arg SearchPerformersParams) ([]Performer, error)
	SearchScenes(ctx context.Context, arg SearchScenesParams) ([]Scene, error)
	SearchStudios(ctx context.Context, arg SearchStudiosParams) ([]Studio, error)
	SearchTags(ctx context.Context, arg SearchTagsParams) ([]Tag, error)
	SetScenePerformerAlias(ctx context.Context, arg SetScenePerformerAliasParams) error
	SoftDeletePerformer(ctx context.Context, id uuid.UUID) (Performer, error)
	SoftDeleteScene(ctx context.Context, id uuid.UUID) (Scene, error)
	SoftDeleteStudio(ctx context.Context, id uuid.UUID) (Studio, error)
	SoftDeleteTag(ctx context.Context, id uuid.UUID) (Tag, error)
	SubmittedHashExists(ctx context.Context, arg SubmittedHashExistsParams) (bool, error)
	TriggerDownvoteEditNotifications(ctx context.Context, id uuid.UUID) error
	TriggerEditCommentNotifications(ctx context.Context, id uuid.UUID) error
	TriggerFailedEditNotifications(ctx context.Context, id uuid.UUID) error
	TriggerPerformerEditNotifications(ctx context.Context, id uuid.UUID) error
	TriggerSceneCreationNotifications(ctx context.Context, id uuid.UUID) error
	TriggerSceneEditNotifications(ctx context.Context, id uuid.UUID) error
	TriggerStudioEditNotifications(ctx context.Context, id uuid.UUID) error
	TriggerUpdatedEditNotifications(ctx context.Context, id uuid.UUID) error
	UpdateEdit(ctx context.Context, arg UpdateEditParams) (Edit, error)
	UpdatePerformer(ctx context.Context, arg UpdatePerformerParams) (Performer, error)
	UpdatePerformerRedirects(ctx context.Context, arg UpdatePerformerRedirectsParams) error
	UpdateScene(ctx context.Context, arg UpdateSceneParams) (Scene, error)
	UpdateSceneRedirects(ctx context.Context, arg UpdateSceneRedirectsParams) error
	UpdateSceneStudios(ctx context.Context, arg UpdateSceneStudiosParams) error
	UpdateSceneTagsForMerge(ctx context.Context, arg UpdateSceneTagsForMergeParams) error
	UpdateSite(ctx context.Context, arg UpdateSiteParams) (Site, error)
	UpdateStudio(ctx context.Context, arg UpdateStudioParams) (Studio, error)
	UpdateStudioRedirects(ctx context.Context, arg UpdateStudioRedirectsParams) error
	UpdateTag(ctx context.Context, arg UpdateTagParams) (Tag, error)
	UpdateTagCategory(ctx context.Context, arg UpdateTagCategoryParams) (TagCategory, error)
	UpdateTagRedirects(ctx context.Context, arg UpdateTagRedirectsParams) error
	UpdateUser(ctx context.Context, arg UpdateUserParams) (User, error)
	UpdateUserAPIKey(ctx context.Context, arg UpdateUserAPIKeyParams) error
	UpdateUserEmail(ctx context.Context, arg UpdateUserEmailParams) error
	UpdateUserInviteTokenCount(ctx context.Context, arg UpdateUserInviteTokenCountParams) error
	UpdateUserPassword(ctx context.Context, arg UpdateUserPasswordParams) error
}

type Queries

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

func New

func New(db DBTX) *Queries

func (*Queries) CancelUserEdits

func (q *Queries) CancelUserEdits(ctx context.Context, userID uuid.NullUUID) error

func (*Queries) ClearScenePerformerAlias

func (q *Queries) ClearScenePerformerAlias(ctx context.Context, arg ClearScenePerformerAliasParams) error

func (*Queries) CountNotificationsByUser

func (q *Queries) CountNotificationsByUser(ctx context.Context, arg CountNotificationsByUserParams) (int64, error)

func (*Queries) CountScenesByPerformer

func (q *Queries) CountScenesByPerformer(ctx context.Context, performerID uuid.UUID) (int64, error)

func (*Queries) CountUserEditsByStatus

func (q *Queries) CountUserEditsByStatus(ctx context.Context, userID uuid.NullUUID) ([]CountUserEditsByStatusRow, error)

func (*Queries) CountUsers

func (q *Queries) CountUsers(ctx context.Context) (int64, error)

func (*Queries) CountVotesByType

func (q *Queries) CountVotesByType(ctx context.Context, userID uuid.UUID) ([]CountVotesByTypeRow, error)

func (*Queries) CreateDraft

func (q *Queries) CreateDraft(ctx context.Context, arg CreateDraftParams) (Draft, error)

Draft queries

func (*Queries) CreateEdit

func (q *Queries) CreateEdit(ctx context.Context, arg CreateEditParams) (Edit, error)

Edit queries

func (*Queries) CreateEditComment

func (q *Queries) CreateEditComment(ctx context.Context, arg CreateEditCommentParams) (EditComment, error)

Edit comments

func (*Queries) CreateEditVote

func (q *Queries) CreateEditVote(ctx context.Context, arg CreateEditVoteParams) error

Edit votes

func (*Queries) CreateFingerprint

func (q *Queries) CreateFingerprint(ctx context.Context, arg CreateFingerprintParams) (Fingerprint, error)

Fingerprint queries (normalized schema)

func (*Queries) CreateImage

func (q *Queries) CreateImage(ctx context.Context, arg CreateImageParams) (Image, error)

Image queries

func (*Queries) CreateInviteKey

func (q *Queries) CreateInviteKey(ctx context.Context, arg CreateInviteKeyParams) (InviteKey, error)

Invite key queries

func (*Queries) CreateOrReplaceFingerprint

func (q *Queries) CreateOrReplaceFingerprint(ctx context.Context, arg CreateOrReplaceFingerprintParams) error

func (*Queries) CreatePerformer

func (q *Queries) CreatePerformer(ctx context.Context, arg CreatePerformerParams) (Performer, error)

Performer queries

func (*Queries) CreatePerformerAliases

func (q *Queries) CreatePerformerAliases(ctx context.Context, arg []CreatePerformerAliasesParams) (int64, error)

func (*Queries) CreatePerformerEdit

func (q *Queries) CreatePerformerEdit(ctx context.Context, arg CreatePerformerEditParams) error

func (*Queries) CreatePerformerFavorite

func (q *Queries) CreatePerformerFavorite(ctx context.Context, arg CreatePerformerFavoriteParams) error

func (*Queries) CreatePerformerImages

func (q *Queries) CreatePerformerImages(ctx context.Context, arg []CreatePerformerImagesParams) (int64, error)

func (*Queries) CreatePerformerPiercings

func (q *Queries) CreatePerformerPiercings(ctx context.Context, arg []CreatePerformerPiercingsParams) (int64, error)

func (*Queries) CreatePerformerRedirect

func (q *Queries) CreatePerformerRedirect(ctx context.Context, arg CreatePerformerRedirectParams) error

Performer redirects

func (*Queries) CreatePerformerTattoos

func (q *Queries) CreatePerformerTattoos(ctx context.Context, arg []CreatePerformerTattoosParams) (int64, error)

func (*Queries) CreatePerformerURLs

func (q *Queries) CreatePerformerURLs(ctx context.Context, arg []CreatePerformerURLsParams) (int64, error)

func (*Queries) CreateScene

func (q *Queries) CreateScene(ctx context.Context, arg CreateSceneParams) (Scene, error)

Scene queries

func (*Queries) CreateSceneEdit

func (q *Queries) CreateSceneEdit(ctx context.Context, arg CreateSceneEditParams) error

func (*Queries) CreateSceneFingerprints

func (q *Queries) CreateSceneFingerprints(ctx context.Context, arg []CreateSceneFingerprintsParams) (int64, error)

func (*Queries) CreateSceneImages

func (q *Queries) CreateSceneImages(ctx context.Context, arg []CreateSceneImagesParams) (int64, error)

func (*Queries) CreateScenePerformers

func (q *Queries) CreateScenePerformers(ctx context.Context, arg []CreateScenePerformersParams) (int64, error)

Scene performers

func (*Queries) CreateSceneRedirect

func (q *Queries) CreateSceneRedirect(ctx context.Context, arg CreateSceneRedirectParams) error

Scene redirects

func (*Queries) CreateSceneTags

func (q *Queries) CreateSceneTags(ctx context.Context, arg []CreateSceneTagsParams) (int64, error)

Scene tags management

func (*Queries) CreateSceneURLs

func (q *Queries) CreateSceneURLs(ctx context.Context, arg []CreateSceneURLsParams) (int64, error)

Scene URLs

func (*Queries) CreateSite

func (q *Queries) CreateSite(ctx context.Context, arg CreateSiteParams) (Site, error)

Site queries

func (*Queries) CreateStudio

func (q *Queries) CreateStudio(ctx context.Context, arg CreateStudioParams) (Studio, error)

Studio queries

func (*Queries) CreateStudioAliases

func (q *Queries) CreateStudioAliases(ctx context.Context, arg []CreateStudioAliasesParams) (int64, error)

Studio aliases

func (*Queries) CreateStudioEdit

func (q *Queries) CreateStudioEdit(ctx context.Context, arg CreateStudioEditParams) error

func (*Queries) CreateStudioFavorite

func (q *Queries) CreateStudioFavorite(ctx context.Context, arg CreateStudioFavoriteParams) error

Studio favorites

func (*Queries) CreateStudioImages

func (q *Queries) CreateStudioImages(ctx context.Context, arg []CreateStudioImagesParams) (int64, error)

Studio images

func (*Queries) CreateStudioRedirect

func (q *Queries) CreateStudioRedirect(ctx context.Context, arg CreateStudioRedirectParams) error

Studio redirects

func (*Queries) CreateStudioURLs

func (q *Queries) CreateStudioURLs(ctx context.Context, arg []CreateStudioURLsParams) (int64, error)

Studio URLs

func (*Queries) CreateTag

func (q *Queries) CreateTag(ctx context.Context, arg CreateTagParams) (Tag, error)

Tag queries

func (*Queries) CreateTagAliases

func (q *Queries) CreateTagAliases(ctx context.Context, arg []CreateTagAliasesParams) (int64, error)

Tag aliases

func (*Queries) CreateTagCategory

func (q *Queries) CreateTagCategory(ctx context.Context, arg CreateTagCategoryParams) (TagCategory, error)

Tag category queries

func (*Queries) CreateTagEdit

func (q *Queries) CreateTagEdit(ctx context.Context, arg CreateTagEditParams) error

func (*Queries) CreateTagRedirect

func (q *Queries) CreateTagRedirect(ctx context.Context, arg CreateTagRedirectParams) error

Tag redirects

func (*Queries) CreateUser

func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) (User, error)

User queries

func (*Queries) CreateUserNotificationSubscriptions

func (q *Queries) CreateUserNotificationSubscriptions(ctx context.Context, arg []CreateUserNotificationSubscriptionsParams) (int64, error)

User notification subscriptions

func (*Queries) CreateUserRoles

func (q *Queries) CreateUserRoles(ctx context.Context, arg []CreateUserRolesParams) (int64, error)

User roles

func (*Queries) CreateUserToken

func (q *Queries) CreateUserToken(ctx context.Context, arg CreateUserTokenParams) (UserToken, error)

User token queries

func (*Queries) DB

func (q *Queries) DB() DBTX

DB returns the underlying DBTX interface from Queries

func (*Queries) DeleteDraft

func (q *Queries) DeleteDraft(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteEdit

func (q *Queries) DeleteEdit(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteExpiredDrafts

func (q *Queries) DeleteExpiredDrafts(ctx context.Context, dollar_1 interface{}) error

func (*Queries) DeleteExpiredUserTokens

func (q *Queries) DeleteExpiredUserTokens(ctx context.Context) error

func (*Queries) DeleteImage

func (q *Queries) DeleteImage(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteInviteKey

func (q *Queries) DeleteInviteKey(ctx context.Context, id uuid.UUID) error

func (*Queries) DeletePerformer

func (q *Queries) DeletePerformer(ctx context.Context, id uuid.UUID) error

func (*Queries) DeletePerformerAliases

func (q *Queries) DeletePerformerAliases(ctx context.Context, performerID uuid.UUID) error

Performer aliases

func (*Queries) DeletePerformerFavorite

func (q *Queries) DeletePerformerFavorite(ctx context.Context, arg DeletePerformerFavoriteParams) error

func (*Queries) DeletePerformerFavorites

func (q *Queries) DeletePerformerFavorites(ctx context.Context, performerID uuid.UUID) error

Performer favorites

func (*Queries) DeletePerformerImages

func (q *Queries) DeletePerformerImages(ctx context.Context, performerID uuid.UUID) error

func (*Queries) DeletePerformerPiercings

func (q *Queries) DeletePerformerPiercings(ctx context.Context, performerID uuid.UUID) error

Performer piercings

func (*Queries) DeletePerformerScenes

func (q *Queries) DeletePerformerScenes(ctx context.Context, performerID uuid.UUID) error

func (*Queries) DeletePerformerTattoos

func (q *Queries) DeletePerformerTattoos(ctx context.Context, performerID uuid.UUID) error

Performer tattoos

func (*Queries) DeletePerformerURLs

func (q *Queries) DeletePerformerURLs(ctx context.Context, performerID uuid.UUID) error

Performer URLs

func (*Queries) DeleteScene

func (q *Queries) DeleteScene(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteSceneFingerprint

func (q *Queries) DeleteSceneFingerprint(ctx context.Context, arg DeleteSceneFingerprintParams) error

func (*Queries) DeleteSceneFingerprintsByScene

func (q *Queries) DeleteSceneFingerprintsByScene(ctx context.Context, sceneID uuid.UUID) error

func (*Queries) DeleteSceneImages

func (q *Queries) DeleteSceneImages(ctx context.Context, sceneID uuid.UUID) error

Scene images

func (*Queries) DeleteScenePerformers

func (q *Queries) DeleteScenePerformers(ctx context.Context, sceneID uuid.UUID) error

func (*Queries) DeleteSceneStudios

func (q *Queries) DeleteSceneStudios(ctx context.Context, studioID uuid.NullUUID) error

func (*Queries) DeleteSceneTagsByScene

func (q *Queries) DeleteSceneTagsByScene(ctx context.Context, sceneID uuid.UUID) error

func (*Queries) DeleteSceneTagsByTag

func (q *Queries) DeleteSceneTagsByTag(ctx context.Context, tagID uuid.UUID) error

func (*Queries) DeleteSceneURLs

func (q *Queries) DeleteSceneURLs(ctx context.Context, sceneID uuid.UUID) error

func (*Queries) DeleteSite

func (q *Queries) DeleteSite(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteStudio

func (q *Queries) DeleteStudio(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteStudioAliases

func (q *Queries) DeleteStudioAliases(ctx context.Context, studioID uuid.UUID) error

func (*Queries) DeleteStudioFavorite

func (q *Queries) DeleteStudioFavorite(ctx context.Context, arg DeleteStudioFavoriteParams) error

func (*Queries) DeleteStudioFavorites

func (q *Queries) DeleteStudioFavorites(ctx context.Context, studioID uuid.UUID) error

func (*Queries) DeleteStudioImages

func (q *Queries) DeleteStudioImages(ctx context.Context, studioID uuid.UUID) error

func (*Queries) DeleteStudioURLs

func (q *Queries) DeleteStudioURLs(ctx context.Context, studioID uuid.UUID) error

func (*Queries) DeleteTag

func (q *Queries) DeleteTag(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteTagAliases

func (q *Queries) DeleteTagAliases(ctx context.Context, tagID uuid.UUID) error

func (*Queries) DeleteTagAliasesByNames

func (q *Queries) DeleteTagAliasesByNames(ctx context.Context, arg DeleteTagAliasesByNamesParams) error

func (*Queries) DeleteTagCategory

func (q *Queries) DeleteTagCategory(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteUser

func (q *Queries) DeleteUser(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteUserNotificationSubscriptions

func (q *Queries) DeleteUserNotificationSubscriptions(ctx context.Context, userID uuid.UUID) error

func (*Queries) DeleteUserRoles

func (q *Queries) DeleteUserRoles(ctx context.Context, userID uuid.UUID) error

func (*Queries) DeleteUserToken

func (q *Queries) DeleteUserToken(ctx context.Context, id uuid.UUID) error

func (*Queries) DestroyExpiredInvites

func (q *Queries) DestroyExpiredInvites(ctx context.Context) error

func (*Queries) DestroyExpiredNotifications

func (q *Queries) DestroyExpiredNotifications(ctx context.Context) error

func (*Queries) FindActiveInviteKeysForUser

func (q *Queries) FindActiveInviteKeysForUser(ctx context.Context, generatedBy uuid.UUID) ([]InviteKey, error)

func (*Queries) FindCompletedEdits

func (q *Queries) FindCompletedEdits(ctx context.Context, arg FindCompletedEditsParams) ([]Edit, error)

Returns pending edits that fulfill one of the criteria for being closed: * The full voting period has passed * The minimum voting period has passed, and the number of votes has crossed the voting threshold. The latter only applies for destructive edits. Non-destructive edits get auto-applied when sufficient votes are cast.

func (*Queries) FindDraft

func (q *Queries) FindDraft(ctx context.Context, id uuid.UUID) (Draft, error)

func (*Queries) FindDraftsByUser

func (q *Queries) FindDraftsByUser(ctx context.Context, userID uuid.UUID) ([]Draft, error)

func (*Queries) FindEdit

func (q *Queries) FindEdit(ctx context.Context, id uuid.UUID) (Edit, error)

func (*Queries) FindExistingPerformers

func (q *Queries) FindExistingPerformers(ctx context.Context, arg FindExistingPerformersParams) ([]Performer, error)

func (*Queries) FindExistingScenes

func (q *Queries) FindExistingScenes(ctx context.Context, arg FindExistingScenesParams) ([]Scene, error)

func (*Queries) FindImage

func (q *Queries) FindImage(ctx context.Context, id uuid.UUID) (Image, error)

func (*Queries) FindImageByChecksum

func (q *Queries) FindImageByChecksum(ctx context.Context, checksum string) (Image, error)

func (*Queries) FindImageIdsByPerformerIds

func (q *Queries) FindImageIdsByPerformerIds(ctx context.Context, dollar_1 []uuid.UUID) ([]PerformerImage, error)

func (*Queries) FindImageIdsBySceneIds

func (q *Queries) FindImageIdsBySceneIds(ctx context.Context, dollar_1 []uuid.UUID) ([]SceneImage, error)

func (*Queries) FindImageIdsByStudioIds

func (q *Queries) FindImageIdsByStudioIds(ctx context.Context, dollar_1 []uuid.UUID) ([]StudioImage, error)

func (*Queries) FindImagesByIds

func (q *Queries) FindImagesByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Image, error)

func (*Queries) FindImagesBySceneID

func (q *Queries) FindImagesBySceneID(ctx context.Context, id uuid.UUID) ([]Image, error)

func (*Queries) FindImagesByStudioID

func (q *Queries) FindImagesByStudioID(ctx context.Context, id uuid.UUID) ([]Image, error)

func (*Queries) FindInviteKey

func (q *Queries) FindInviteKey(ctx context.Context, id uuid.UUID) (InviteKey, error)

func (*Queries) FindMergeIDsByPerformerIds

func (q *Queries) FindMergeIDsByPerformerIds(ctx context.Context, performerIds []uuid.UUID) ([]FindMergeIDsByPerformerIdsRow, error)

Find merge target IDs for performers (for merges where these are sources)

func (*Queries) FindMergeIDsBySourcePerformerIds

func (q *Queries) FindMergeIDsBySourcePerformerIds(ctx context.Context, performerIds []uuid.UUID) ([]FindMergeIDsBySourcePerformerIdsRow, error)

Find merge source IDs for performers (for merges where these are targets)

func (*Queries) FindNotificationsByUser

func (q *Queries) FindNotificationsByUser(ctx context.Context, arg FindNotificationsByUserParams) ([]Notification, error)

Notification queries

func (*Queries) FindPendingPerformerCreation

func (q *Queries) FindPendingPerformerCreation(ctx context.Context, arg FindPendingPerformerCreationParams) ([]Edit, error)

func (*Queries) FindPendingSceneCreation

func (q *Queries) FindPendingSceneCreation(ctx context.Context, arg FindPendingSceneCreationParams) ([]Edit, error)

func (*Queries) FindPerformer

func (q *Queries) FindPerformer(ctx context.Context, id uuid.UUID) (Performer, error)

func (*Queries) FindPerformerAliasesByIds

func (q *Queries) FindPerformerAliasesByIds(ctx context.Context, performerIds []uuid.UUID) ([]PerformerAlias, error)

Get aliases for multiple performers

func (*Queries) FindPerformerByAlias

func (q *Queries) FindPerformerByAlias(ctx context.Context, upper interface{}) (Performer, error)

func (*Queries) FindPerformerByName

func (q *Queries) FindPerformerByName(ctx context.Context, upper interface{}) (Performer, error)

func (*Queries) FindPerformerFavoritesByIds

func (q *Queries) FindPerformerFavoritesByIds(ctx context.Context, arg FindPerformerFavoritesByIdsParams) ([]FindPerformerFavoritesByIdsRow, error)

Check favorite status for multiple performers for a specific user

func (*Queries) FindPerformerPiercingsByIds

func (q *Queries) FindPerformerPiercingsByIds(ctx context.Context, performerIds []uuid.UUID) ([]PerformerPiercing, error)

Get piercings for multiple performers

func (*Queries) FindPerformerTattoosByIds

func (q *Queries) FindPerformerTattoosByIds(ctx context.Context, performerIds []uuid.UUID) ([]PerformerTattoo, error)

Get tattoos for multiple performers

func (*Queries) FindPerformerUrlsByIds

func (q *Queries) FindPerformerUrlsByIds(ctx context.Context, performerIds []uuid.UUID) ([]PerformerUrl, error)

Get URLs for multiple performers

func (*Queries) FindPerformerWithRedirect

func (q *Queries) FindPerformerWithRedirect(ctx context.Context, id uuid.UUID) ([]Performer, error)

func (*Queries) FindPerformersByIds

func (q *Queries) FindPerformersByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Performer, error)

func (*Queries) FindPerformersByURL

func (q *Queries) FindPerformersByURL(ctx context.Context, arg FindPerformersByURLParams) ([]Performer, error)

func (*Queries) FindScene

func (q *Queries) FindScene(ctx context.Context, id uuid.UUID) (Scene, error)

func (*Queries) FindSceneAppearancesByIds

func (q *Queries) FindSceneAppearancesByIds(ctx context.Context, sceneIds []uuid.UUID) ([]FindSceneAppearancesByIdsRow, error)

Get performer appearances for multiple scenes

func (*Queries) FindSceneByURL

func (q *Queries) FindSceneByURL(ctx context.Context, arg FindSceneByURLParams) ([]Scene, error)

func (*Queries) FindSceneUrlsByIds

func (q *Queries) FindSceneUrlsByIds(ctx context.Context, sceneIds []uuid.UUID) ([]SceneUrl, error)

Get URLs for multiple scenes

func (*Queries) FindScenesByFingerprint

func (q *Queries) FindScenesByFingerprint(ctx context.Context, arg FindScenesByFingerprintParams) ([]Scene, error)

func (*Queries) FindScenesByFingerprints

func (q *Queries) FindScenesByFingerprints(ctx context.Context, fingerprints []string) ([]Scene, error)

Scene fingerprints (use fingerprint.sql for most fingerprint operations)

func (*Queries) FindScenesByFullFingerprints

func (q *Queries) FindScenesByFullFingerprints(ctx context.Context, arg FindScenesByFullFingerprintsParams) ([]Scene, error)

func (*Queries) FindSitesByIds

func (q *Queries) FindSitesByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Site, error)

func (*Queries) FindStudio

func (q *Queries) FindStudio(ctx context.Context, id uuid.UUID) (Studio, error)

func (*Queries) FindStudioAliasesByIds

func (q *Queries) FindStudioAliasesByIds(ctx context.Context, studioIds []uuid.UUID) ([]StudioAlias, error)

Get aliases for multiple studios

func (*Queries) FindStudioByAlias

func (q *Queries) FindStudioByAlias(ctx context.Context, upper interface{}) (Studio, error)

func (*Queries) FindStudioByName

func (q *Queries) FindStudioByName(ctx context.Context, upper interface{}) (Studio, error)

func (*Queries) FindStudioFavoritesByIds

func (q *Queries) FindStudioFavoritesByIds(ctx context.Context, arg FindStudioFavoritesByIdsParams) ([]FindStudioFavoritesByIdsRow, error)

Check favorite status for multiple studios for a specific user

func (*Queries) FindStudioUrlsByIds

func (q *Queries) FindStudioUrlsByIds(ctx context.Context, studioIds []uuid.UUID) ([]StudioUrl, error)

Get URLs for multiple studios

func (*Queries) FindStudioWithRedirect

func (q *Queries) FindStudioWithRedirect(ctx context.Context, id uuid.UUID) (Studio, error)

func (*Queries) FindTag

func (q *Queries) FindTag(ctx context.Context, id uuid.UUID) (Tag, error)

func (*Queries) FindTagByAlias

func (q *Queries) FindTagByAlias(ctx context.Context, upper interface{}) (Tag, error)

func (*Queries) FindTagByName

func (q *Queries) FindTagByName(ctx context.Context, upper interface{}) (Tag, error)

func (*Queries) FindTagByNameOrAlias

func (q *Queries) FindTagByNameOrAlias(ctx context.Context, lower string) (Tag, error)

func (*Queries) FindTagCategory

func (q *Queries) FindTagCategory(ctx context.Context, id uuid.UUID) (TagCategory, error)

func (*Queries) FindTagIdsBySceneIds

func (q *Queries) FindTagIdsBySceneIds(ctx context.Context, sceneIds []uuid.UUID) ([]SceneTag, error)

Bulk query to find tag IDs for multiple scene IDs

func (*Queries) FindTagWithRedirect

func (q *Queries) FindTagWithRedirect(ctx context.Context, id uuid.UUID) ([]Tag, error)

func (*Queries) FindTagsByIds

func (q *Queries) FindTagsByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Tag, error)

func (*Queries) FindTagsBySceneID

func (q *Queries) FindTagsBySceneID(ctx context.Context, sceneID uuid.UUID) ([]Tag, error)

func (*Queries) FindUnreadNotificationsByUser

func (q *Queries) FindUnreadNotificationsByUser(ctx context.Context, arg FindUnreadNotificationsByUserParams) ([]Notification, error)

func (*Queries) FindUnusedImages

func (q *Queries) FindUnusedImages(ctx context.Context) ([]Image, error)

func (*Queries) FindUser

func (q *Queries) FindUser(ctx context.Context, id uuid.UUID) (User, error)

func (*Queries) FindUserByEmail

func (q *Queries) FindUserByEmail(ctx context.Context, upper interface{}) (User, error)

func (*Queries) FindUserByName

func (q *Queries) FindUserByName(ctx context.Context, name string) (User, error)

func (*Queries) FindUserToken

func (q *Queries) FindUserToken(ctx context.Context, id uuid.UUID) (UserToken, error)

func (*Queries) FindUserTokensByEmail added in v0.7.3

func (q *Queries) FindUserTokensByEmail(ctx context.Context, dollar_1 string) ([]UserToken, error)

func (*Queries) FindUserTokensByInviteKey

func (q *Queries) FindUserTokensByInviteKey(ctx context.Context, dollar_1 uuid.UUID) ([]UserToken, error)

func (*Queries) GetAllFingerprints

func (q *Queries) GetAllFingerprints(ctx context.Context, arg GetAllFingerprintsParams) ([]GetAllFingerprintsRow, error)

Get all fingerprints for multiple scenes with aggregated vote data When onlySubmitted is true, pass the actual user ID, when false pass NULL

func (*Queries) GetAllSceneFingerprints

func (q *Queries) GetAllSceneFingerprints(ctx context.Context, sceneID uuid.UUID) ([]GetAllSceneFingerprintsRow, error)

func (*Queries) GetAllTagCategories

func (q *Queries) GetAllTagCategories(ctx context.Context) ([]TagCategory, error)

func (*Queries) GetChildStudios

func (q *Queries) GetChildStudios(ctx context.Context, parentStudioID uuid.NullUUID) ([]Studio, error)

func (*Queries) GetEditComments

func (q *Queries) GetEditComments(ctx context.Context, editID uuid.UUID) ([]EditComment, error)

func (*Queries) GetEditCommentsByIds

func (q *Queries) GetEditCommentsByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]EditComment, error)

func (*Queries) GetEditPerformerAliases

func (q *Queries) GetEditPerformerAliases(ctx context.Context, id uuid.UUID) ([]string, error)

func (*Queries) GetEditPerformerPiercings

func (q *Queries) GetEditPerformerPiercings(ctx context.Context, id uuid.UUID) ([]GetEditPerformerPiercingsRow, error)

func (*Queries) GetEditPerformerTattoos

func (q *Queries) GetEditPerformerTattoos(ctx context.Context, id uuid.UUID) ([]GetEditPerformerTattoosRow, error)

func (*Queries) GetEditTargetID

func (q *Queries) GetEditTargetID(ctx context.Context, id uuid.UUID) (GetEditTargetIDRow, error)

func (*Queries) GetEditVotes

func (q *Queries) GetEditVotes(ctx context.Context, editID uuid.UUID) ([]EditVote, error)

func (*Queries) GetEditsByIds

func (q *Queries) GetEditsByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]Edit, error)

func (*Queries) GetEditsByPerformer

func (q *Queries) GetEditsByPerformer(ctx context.Context, performerID uuid.UUID) ([]Edit, error)

func (*Queries) GetEditsByScene

func (q *Queries) GetEditsByScene(ctx context.Context, sceneID uuid.UUID) ([]Edit, error)

func (*Queries) GetEditsByStudio

func (q *Queries) GetEditsByStudio(ctx context.Context, studioID uuid.UUID) ([]Edit, error)

func (*Queries) GetEditsByTag

func (q *Queries) GetEditsByTag(ctx context.Context, tagID uuid.UUID) ([]Edit, error)

func (*Queries) GetFingerprint

func (q *Queries) GetFingerprint(ctx context.Context, arg GetFingerprintParams) (Fingerprint, error)

func (*Queries) GetImagesForEdit

func (q *Queries) GetImagesForEdit(ctx context.Context, id uuid.UUID) ([]Image, error)

Gets current images for target entity and merges with edit's added_images/removed_images

func (*Queries) GetMergedPerformersForEdit

func (q *Queries) GetMergedPerformersForEdit(ctx context.Context, id uuid.UUID) ([]GetMergedPerformersForEditRow, error)

Gets current performers for target entity and merges with edit's added_performers/removed_performers

func (*Queries) GetMergedStudioAliasesForEdit

func (q *Queries) GetMergedStudioAliasesForEdit(ctx context.Context, id uuid.UUID) ([]string, error)

Gets current aliases for target studio entity and merges with edit's added_aliases/removed_aliases

func (*Queries) GetMergedTagAliasesForEdit

func (q *Queries) GetMergedTagAliasesForEdit(ctx context.Context, id uuid.UUID) ([]string, error)

Gets current aliases for target tag entity and merges with edit's added_aliases/removed_aliases

func (*Queries) GetMergedTagsForEdit

func (q *Queries) GetMergedTagsForEdit(ctx context.Context, id uuid.UUID) ([]Tag, error)

Gets current tags for target entity and merges with edit's added_tags/removed_tags

func (*Queries) GetMergedURLsForEdit

func (q *Queries) GetMergedURLsForEdit(ctx context.Context, id uuid.UUID) ([]GetMergedURLsForEditRow, error)

URL merging queries for edits result: URL Gets current URLs for target entity and merges with edit's added_urls/removed_urls

func (*Queries) GetPerformerAliases

func (q *Queries) GetPerformerAliases(ctx context.Context, performerID uuid.UUID) ([]string, error)

func (*Queries) GetPerformerImages

func (q *Queries) GetPerformerImages(ctx context.Context, performerID uuid.UUID) ([]Image, error)

Performer images

func (*Queries) GetPerformerPiercings

func (q *Queries) GetPerformerPiercings(ctx context.Context, performerID uuid.UUID) ([]GetPerformerPiercingsRow, error)

func (*Queries) GetPerformerTattoos

func (q *Queries) GetPerformerTattoos(ctx context.Context, performerID uuid.UUID) ([]GetPerformerTattoosRow, error)

func (*Queries) GetPerformerURLs

func (q *Queries) GetPerformerURLs(ctx context.Context, performerID uuid.UUID) ([]GetPerformerURLsRow, error)

func (*Queries) GetScenePerformers

func (q *Queries) GetScenePerformers(ctx context.Context, sceneID uuid.UUID) ([]GetScenePerformersRow, error)

func (*Queries) GetSceneTags

func (q *Queries) GetSceneTags(ctx context.Context, sceneID uuid.UUID) ([]Tag, error)

func (*Queries) GetSceneURLs

func (q *Queries) GetSceneURLs(ctx context.Context, sceneID uuid.UUID) ([]GetSceneURLsRow, error)

func (*Queries) GetScenes

func (q *Queries) GetScenes(ctx context.Context, dollar_1 []uuid.UUID) ([]Scene, error)

func (*Queries) GetSite

func (q *Queries) GetSite(ctx context.Context, id uuid.UUID) (Site, error)

func (*Queries) GetStudioAliases

func (q *Queries) GetStudioAliases(ctx context.Context, studioID uuid.UUID) ([]string, error)

func (*Queries) GetStudioImages

func (q *Queries) GetStudioImages(ctx context.Context, studioID uuid.UUID) ([]uuid.UUID, error)

func (*Queries) GetStudioURLs

func (q *Queries) GetStudioURLs(ctx context.Context, studioID uuid.UUID) ([]StudioUrl, error)

func (*Queries) GetStudios

func (q *Queries) GetStudios(ctx context.Context, dollar_1 []uuid.UUID) ([]Studio, error)

func (*Queries) GetStudiosByPerformer

func (q *Queries) GetStudiosByPerformer(ctx context.Context, performerID uuid.UUID) ([]GetStudiosByPerformerRow, error)

func (*Queries) GetTagAliases

func (q *Queries) GetTagAliases(ctx context.Context, tagID uuid.UUID) ([]string, error)

func (*Queries) GetTagCategoriesByIds

func (q *Queries) GetTagCategoriesByIds(ctx context.Context, dollar_1 []uuid.UUID) ([]TagCategory, error)

func (*Queries) GetUserNotificationSubscriptions

func (q *Queries) GetUserNotificationSubscriptions(ctx context.Context, userID uuid.UUID) ([]NotificationType, error)

func (*Queries) GetUserRoles

func (q *Queries) GetUserRoles(ctx context.Context, userID uuid.UUID) ([]string, error)

func (*Queries) InviteKeyUsed

func (q *Queries) InviteKeyUsed(ctx context.Context, id uuid.UUID) (*int, error)

func (*Queries) IsImageUnused

func (q *Queries) IsImageUnused(ctx context.Context, id uuid.UUID) (bool, error)

func (*Queries) MarkAllNotificationsRead

func (q *Queries) MarkAllNotificationsRead(ctx context.Context, userID uuid.UUID) error

func (*Queries) MarkNotificationRead

func (q *Queries) MarkNotificationRead(ctx context.Context, arg MarkNotificationReadParams) error

func (*Queries) ReassignPerformerAliases

func (q *Queries) ReassignPerformerAliases(ctx context.Context, arg ReassignPerformerAliasesParams) error

func (*Queries) ReassignPerformerFavorites

func (q *Queries) ReassignPerformerFavorites(ctx context.Context, arg ReassignPerformerFavoritesParams) error

func (*Queries) ReassignStudioFavorites

func (q *Queries) ReassignStudioFavorites(ctx context.Context, arg ReassignStudioFavoritesParams) error

func (*Queries) ResetVotes

func (q *Queries) ResetVotes(ctx context.Context, editID uuid.UUID) error

func (*Queries) SearchPerformers

func (q *Queries) SearchPerformers(ctx context.Context, arg SearchPerformersParams) ([]Performer, error)

func (*Queries) SearchScenes

func (q *Queries) SearchScenes(ctx context.Context, arg SearchScenesParams) ([]Scene, error)

func (*Queries) SearchStudios

func (q *Queries) SearchStudios(ctx context.Context, arg SearchStudiosParams) ([]Studio, error)

func (*Queries) SearchTags

func (q *Queries) SearchTags(ctx context.Context, arg SearchTagsParams) ([]Tag, error)

func (*Queries) SetScenePerformerAlias

func (q *Queries) SetScenePerformerAlias(ctx context.Context, arg SetScenePerformerAliasParams) error

func (*Queries) SoftDeletePerformer

func (q *Queries) SoftDeletePerformer(ctx context.Context, id uuid.UUID) (Performer, error)

func (*Queries) SoftDeleteScene

func (q *Queries) SoftDeleteScene(ctx context.Context, id uuid.UUID) (Scene, error)

func (*Queries) SoftDeleteStudio

func (q *Queries) SoftDeleteStudio(ctx context.Context, id uuid.UUID) (Studio, error)

func (*Queries) SoftDeleteTag

func (q *Queries) SoftDeleteTag(ctx context.Context, id uuid.UUID) (Tag, error)

func (*Queries) SubmittedHashExists

func (q *Queries) SubmittedHashExists(ctx context.Context, arg SubmittedHashExistsParams) (bool, error)

func (*Queries) TriggerDownvoteEditNotifications

func (q *Queries) TriggerDownvoteEditNotifications(ctx context.Context, id uuid.UUID) error

func (*Queries) TriggerEditCommentNotifications

func (q *Queries) TriggerEditCommentNotifications(ctx context.Context, id uuid.UUID) error

func (*Queries) TriggerFailedEditNotifications

func (q *Queries) TriggerFailedEditNotifications(ctx context.Context, id uuid.UUID) error

func (*Queries) TriggerPerformerEditNotifications

func (q *Queries) TriggerPerformerEditNotifications(ctx context.Context, id uuid.UUID) error

func (*Queries) TriggerSceneCreationNotifications

func (q *Queries) TriggerSceneCreationNotifications(ctx context.Context, id uuid.UUID) error

func (*Queries) TriggerSceneEditNotifications

func (q *Queries) TriggerSceneEditNotifications(ctx context.Context, id uuid.UUID) error

func (*Queries) TriggerStudioEditNotifications

func (q *Queries) TriggerStudioEditNotifications(ctx context.Context, id uuid.UUID) error

func (*Queries) TriggerUpdatedEditNotifications

func (q *Queries) TriggerUpdatedEditNotifications(ctx context.Context, id uuid.UUID) error

func (*Queries) UpdateEdit

func (q *Queries) UpdateEdit(ctx context.Context, arg UpdateEditParams) (Edit, error)

func (*Queries) UpdatePerformer

func (q *Queries) UpdatePerformer(ctx context.Context, arg UpdatePerformerParams) (Performer, error)

func (*Queries) UpdatePerformerRedirects

func (q *Queries) UpdatePerformerRedirects(ctx context.Context, arg UpdatePerformerRedirectsParams) error

func (*Queries) UpdateScene

func (q *Queries) UpdateScene(ctx context.Context, arg UpdateSceneParams) (Scene, error)

func (*Queries) UpdateSceneRedirects

func (q *Queries) UpdateSceneRedirects(ctx context.Context, arg UpdateSceneRedirectsParams) error

func (*Queries) UpdateSceneStudios

func (q *Queries) UpdateSceneStudios(ctx context.Context, arg UpdateSceneStudiosParams) error

func (*Queries) UpdateSceneTagsForMerge

func (q *Queries) UpdateSceneTagsForMerge(ctx context.Context, arg UpdateSceneTagsForMergeParams) error

func (*Queries) UpdateSite

func (q *Queries) UpdateSite(ctx context.Context, arg UpdateSiteParams) (Site, error)

func (*Queries) UpdateStudio

func (q *Queries) UpdateStudio(ctx context.Context, arg UpdateStudioParams) (Studio, error)

func (*Queries) UpdateStudioRedirects

func (q *Queries) UpdateStudioRedirects(ctx context.Context, arg UpdateStudioRedirectsParams) error

func (*Queries) UpdateTag

func (q *Queries) UpdateTag(ctx context.Context, arg UpdateTagParams) (Tag, error)

func (*Queries) UpdateTagCategory

func (q *Queries) UpdateTagCategory(ctx context.Context, arg UpdateTagCategoryParams) (TagCategory, error)

func (*Queries) UpdateTagRedirects

func (q *Queries) UpdateTagRedirects(ctx context.Context, arg UpdateTagRedirectsParams) error

func (*Queries) UpdateUser

func (q *Queries) UpdateUser(ctx context.Context, arg UpdateUserParams) (User, error)

func (*Queries) UpdateUserAPIKey

func (q *Queries) UpdateUserAPIKey(ctx context.Context, arg UpdateUserAPIKeyParams) error

func (*Queries) UpdateUserEmail

func (q *Queries) UpdateUserEmail(ctx context.Context, arg UpdateUserEmailParams) error

func (*Queries) UpdateUserInviteTokenCount

func (q *Queries) UpdateUserInviteTokenCount(ctx context.Context, arg UpdateUserInviteTokenCountParams) error

func (*Queries) UpdateUserPassword

func (q *Queries) UpdateUserPassword(ctx context.Context, arg UpdateUserPasswordParams) error

func (*Queries) WithTx

func (q *Queries) WithTx(tx pgx.Tx) *Queries

type ReassignPerformerAliasesParams

type ReassignPerformerAliasesParams struct {
	NewPerformerID uuid.UUID `db:"new_performer_id" json:"new_performer_id"`
	OldPerformerID uuid.UUID `db:"old_performer_id" json:"old_performer_id"`
}

type ReassignPerformerFavoritesParams

type ReassignPerformerFavoritesParams struct {
	NewPerformerID uuid.UUID `db:"new_performer_id" json:"new_performer_id"`
	OldPerformerID uuid.UUID `db:"old_performer_id" json:"old_performer_id"`
}

type ReassignStudioFavoritesParams

type ReassignStudioFavoritesParams struct {
	NewStudioID uuid.UUID `db:"new_studio_id" json:"new_studio_id"`
	OldStudioID uuid.UUID `db:"old_studio_id" json:"old_studio_id"`
}

type Scene

type Scene struct {
	ID             uuid.UUID     `db:"id" json:"id"`
	Title          *string       `db:"title" json:"title"`
	Details        *string       `db:"details" json:"details"`
	StudioID       uuid.NullUUID `db:"studio_id" json:"studio_id"`
	CreatedAt      time.Time     `db:"created_at" json:"created_at"`
	UpdatedAt      time.Time     `db:"updated_at" json:"updated_at"`
	Duration       *int          `db:"duration" json:"duration"`
	Director       *string       `db:"director" json:"director"`
	Deleted        bool          `db:"deleted" json:"deleted"`
	Code           *string       `db:"code" json:"code"`
	Date           *string       `db:"date" json:"date"`
	ProductionDate *string       `db:"production_date" json:"production_date"`
}

type SceneEdit

type SceneEdit struct {
	EditID  uuid.UUID `db:"edit_id" json:"edit_id"`
	SceneID uuid.UUID `db:"scene_id" json:"scene_id"`
}

type SceneFingerprint

type SceneFingerprint struct {
	FingerprintID int       `db:"fingerprint_id" json:"fingerprint_id"`
	SceneID       uuid.UUID `db:"scene_id" json:"scene_id"`
	UserID        uuid.UUID `db:"user_id" json:"user_id"`
	Duration      int       `db:"duration" json:"duration"`
	CreatedAt     time.Time `db:"created_at" json:"created_at"`
	Vote          int16     `db:"vote" json:"vote"`
}

type SceneImage

type SceneImage struct {
	SceneID uuid.UUID `db:"scene_id" json:"scene_id"`
	ImageID uuid.UUID `db:"image_id" json:"image_id"`
}

type ScenePerformer

type ScenePerformer struct {
	SceneID     uuid.UUID `db:"scene_id" json:"scene_id"`
	As          *string   `db:"as" json:"as"`
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
}

type SceneRedirect

type SceneRedirect struct {
	SourceID uuid.UUID `db:"source_id" json:"source_id"`
	TargetID uuid.UUID `db:"target_id" json:"target_id"`
}

type SceneSearch

type SceneSearch struct {
	SceneID        uuid.UUID   `db:"scene_id" json:"scene_id"`
	SceneTitle     string      `db:"scene_title" json:"scene_title"`
	SceneDate      string      `db:"scene_date" json:"scene_date"`
	StudioName     interface{} `db:"studio_name" json:"studio_name"`
	PerformerNames interface{} `db:"performer_names" json:"performer_names"`
	SceneCode      *string     `db:"scene_code" json:"scene_code"`
}

type SceneTag

type SceneTag struct {
	SceneID uuid.UUID `db:"scene_id" json:"scene_id"`
	TagID   uuid.UUID `db:"tag_id" json:"tag_id"`
}

type SceneUrl

type SceneUrl struct {
	SceneID uuid.UUID `db:"scene_id" json:"scene_id"`
	Url     string    `db:"url" json:"url"`
	SiteID  uuid.UUID `db:"site_id" json:"site_id"`
}

type SearchPerformersParams

type SearchPerformersParams struct {
	Term  interface{} `db:"term" json:"term"`
	Limit int32       `db:"limit" json:"limit"`
}

type SearchScenesParams

type SearchScenesParams struct {
	Term  *string `db:"term" json:"term"`
	Limit int32   `db:"limit" json:"limit"`
}

type SearchStudiosParams

type SearchStudiosParams struct {
	Term  interface{} `db:"term" json:"term"`
	Limit int32       `db:"limit" json:"limit"`
}

type SearchTagsParams

type SearchTagsParams struct {
	Term  *string `db:"term" json:"term"`
	Limit int32   `db:"limit" json:"limit"`
}

type Service

type Service interface {
	WithTxn(func(*Queries) error) error
}

Service interface that all services should implement

type SetScenePerformerAliasParams

type SetScenePerformerAliasParams struct {
	PerformerID uuid.UUID `db:"performer_id" json:"performer_id"`
	As          *string   `db:"as" json:"as"`
}

type Site

type Site struct {
	ID          uuid.UUID `db:"id" json:"id"`
	Name        string    `db:"name" json:"name"`
	Description *string   `db:"description" json:"description"`
	Url         *string   `db:"url" json:"url"`
	Regex       *string   `db:"regex" json:"regex"`
	ValidTypes  []string  `db:"valid_types" json:"valid_types"`
	CreatedAt   time.Time `db:"created_at" json:"created_at"`
	UpdatedAt   time.Time `db:"updated_at" json:"updated_at"`
}

type Studio

type Studio struct {
	ID             uuid.UUID     `db:"id" json:"id"`
	Name           string        `db:"name" json:"name"`
	ParentStudioID uuid.NullUUID `db:"parent_studio_id" json:"parent_studio_id"`
	CreatedAt      time.Time     `db:"created_at" json:"created_at"`
	UpdatedAt      time.Time     `db:"updated_at" json:"updated_at"`
	Deleted        bool          `db:"deleted" json:"deleted"`
}

type StudioAlias

type StudioAlias struct {
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
	Alias    string    `db:"alias" json:"alias"`
}

type StudioEdit

type StudioEdit struct {
	EditID   uuid.UUID `db:"edit_id" json:"edit_id"`
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
}

type StudioFavorite

type StudioFavorite struct {
	StudioID  uuid.UUID  `db:"studio_id" json:"studio_id"`
	UserID    uuid.UUID  `db:"user_id" json:"user_id"`
	CreatedAt *time.Time `db:"created_at" json:"created_at"`
}

type StudioImage

type StudioImage struct {
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
	ImageID  uuid.UUID `db:"image_id" json:"image_id"`
}

type StudioRedirect

type StudioRedirect struct {
	SourceID uuid.UUID `db:"source_id" json:"source_id"`
	TargetID uuid.UUID `db:"target_id" json:"target_id"`
}

type StudioUrl

type StudioUrl struct {
	StudioID uuid.UUID `db:"studio_id" json:"studio_id"`
	Url      string    `db:"url" json:"url"`
	SiteID   uuid.UUID `db:"site_id" json:"site_id"`
}

type SubmittedHashExistsParams

type SubmittedHashExistsParams struct {
	SceneID   uuid.UUID `db:"scene_id" json:"scene_id"`
	Hash      string    `db:"hash" json:"hash"`
	Algorithm string    `db:"algorithm" json:"algorithm"`
}

type Tag

type Tag struct {
	ID          uuid.UUID     `db:"id" json:"id"`
	Name        string        `db:"name" json:"name"`
	Description *string       `db:"description" json:"description"`
	CreatedAt   time.Time     `db:"created_at" json:"created_at"`
	UpdatedAt   time.Time     `db:"updated_at" json:"updated_at"`
	Deleted     bool          `db:"deleted" json:"deleted"`
	CategoryID  uuid.NullUUID `db:"category_id" json:"category_id"`
}

type TagAlias

type TagAlias struct {
	TagID uuid.UUID `db:"tag_id" json:"tag_id"`
	Alias string    `db:"alias" json:"alias"`
}

type TagCategory

type TagCategory struct {
	ID          uuid.UUID `db:"id" json:"id"`
	Group       string    `db:"group" json:"group"`
	Name        string    `db:"name" json:"name"`
	Description *string   `db:"description" json:"description"`
	CreatedAt   time.Time `db:"created_at" json:"created_at"`
	UpdatedAt   time.Time `db:"updated_at" json:"updated_at"`
}

type TagEdit

type TagEdit struct {
	EditID uuid.UUID `db:"edit_id" json:"edit_id"`
	TagID  uuid.UUID `db:"tag_id" json:"tag_id"`
}

type TagRedirect

type TagRedirect struct {
	SourceID uuid.UUID `db:"source_id" json:"source_id"`
	TargetID uuid.UUID `db:"target_id" json:"target_id"`
}

type UpdateEditParams

type UpdateEditParams struct {
	ID          uuid.UUID  `db:"id" json:"id"`
	Data        []byte     `db:"data" json:"data"`
	Votes       int        `db:"votes" json:"votes"`
	Status      string     `db:"status" json:"status"`
	Applied     bool       `db:"applied" json:"applied"`
	ClosedAt    *time.Time `db:"closed_at" json:"closed_at"`
	UpdateCount int        `db:"update_count" json:"update_count"`
}

type UpdatePerformerParams

type UpdatePerformerParams struct {
	ID              uuid.UUID              `db:"id" json:"id"`
	Name            string                 `db:"name" json:"name"`
	Disambiguation  *string                `db:"disambiguation" json:"disambiguation"`
	Gender          *models.GenderEnum     `db:"gender" json:"gender"`
	Birthdate       *string                `db:"birthdate" json:"birthdate"`
	Ethnicity       *models.EthnicityEnum  `db:"ethnicity" json:"ethnicity"`
	Country         *string                `db:"country" json:"country"`
	EyeColor        *models.EyeColorEnum   `db:"eye_color" json:"eye_color"`
	HairColor       *models.HairColorEnum  `db:"hair_color" json:"hair_color"`
	Height          *int                   `db:"height" json:"height"`
	CupSize         *string                `db:"cup_size" json:"cup_size"`
	BandSize        *int                   `db:"band_size" json:"band_size"`
	HipSize         *int                   `db:"hip_size" json:"hip_size"`
	WaistSize       *int                   `db:"waist_size" json:"waist_size"`
	BreastType      *models.BreastTypeEnum `db:"breast_type" json:"breast_type"`
	CareerStartYear *int                   `db:"career_start_year" json:"career_start_year"`
	CareerEndYear   *int                   `db:"career_end_year" json:"career_end_year"`
	Deathdate       *string                `db:"deathdate" json:"deathdate"`
}

type UpdatePerformerRedirectsParams

type UpdatePerformerRedirectsParams struct {
	NewPerformerID uuid.UUID `db:"new_performer_id" json:"new_performer_id"`
	OldPerformerID uuid.UUID `db:"old_performer_id" json:"old_performer_id"`
}

type UpdateSceneParams

type UpdateSceneParams struct {
	ID             uuid.UUID     `db:"id" json:"id"`
	Title          *string       `db:"title" json:"title"`
	Details        *string       `db:"details" json:"details"`
	Date           *string       `db:"date" json:"date"`
	ProductionDate *string       `db:"production_date" json:"production_date"`
	StudioID       uuid.NullUUID `db:"studio_id" json:"studio_id"`
	Duration       *int          `db:"duration" json:"duration"`
	Director       *string       `db:"director" json:"director"`
	Code           *string       `db:"code" json:"code"`
}

type UpdateSceneRedirectsParams

type UpdateSceneRedirectsParams struct {
	NewTargetID uuid.UUID `db:"new_target_id" json:"new_target_id"`
	OldTargetID uuid.UUID `db:"old_target_id" json:"old_target_id"`
}

type UpdateSceneStudiosParams

type UpdateSceneStudiosParams struct {
	TargetID uuid.NullUUID `db:"target_id" json:"target_id"`
	SourceID uuid.NullUUID `db:"source_id" json:"source_id"`
}

type UpdateSceneTagsForMergeParams

type UpdateSceneTagsForMergeParams struct {
	NewTagID uuid.UUID `db:"new_tag_id" json:"new_tag_id"`
	OldTagID uuid.UUID `db:"old_tag_id" json:"old_tag_id"`
}

type UpdateSiteParams

type UpdateSiteParams struct {
	ID          uuid.UUID `db:"id" json:"id"`
	Name        string    `db:"name" json:"name"`
	Description *string   `db:"description" json:"description"`
	Url         *string   `db:"url" json:"url"`
	Regex       *string   `db:"regex" json:"regex"`
	ValidTypes  []string  `db:"valid_types" json:"valid_types"`
}

type UpdateStudioParams

type UpdateStudioParams struct {
	ID             uuid.UUID     `db:"id" json:"id"`
	Name           string        `db:"name" json:"name"`
	ParentStudioID uuid.NullUUID `db:"parent_studio_id" json:"parent_studio_id"`
}

type UpdateStudioRedirectsParams

type UpdateStudioRedirectsParams struct {
	NewTargetID uuid.UUID `db:"new_target_id" json:"new_target_id"`
	OldTargetID uuid.UUID `db:"old_target_id" json:"old_target_id"`
}

type UpdateTagCategoryParams

type UpdateTagCategoryParams struct {
	ID          uuid.UUID `db:"id" json:"id"`
	Group       string    `db:"group" json:"group"`
	Name        string    `db:"name" json:"name"`
	Description *string   `db:"description" json:"description"`
}

type UpdateTagParams

type UpdateTagParams struct {
	ID          uuid.UUID     `db:"id" json:"id"`
	Name        string        `db:"name" json:"name"`
	CategoryID  uuid.NullUUID `db:"category_id" json:"category_id"`
	Description *string       `db:"description" json:"description"`
}

type UpdateTagRedirectsParams

type UpdateTagRedirectsParams struct {
	NewTargetID uuid.UUID `db:"new_target_id" json:"new_target_id"`
	OldTargetID uuid.UUID `db:"old_target_id" json:"old_target_id"`
}

type UpdateUserAPIKeyParams

type UpdateUserAPIKeyParams struct {
	ID     uuid.UUID `db:"id" json:"id"`
	ApiKey string    `db:"api_key" json:"api_key"`
}

type UpdateUserEmailParams

type UpdateUserEmailParams struct {
	ID    uuid.UUID `db:"id" json:"id"`
	Email string    `db:"email" json:"email"`
}

type UpdateUserInviteTokenCountParams

type UpdateUserInviteTokenCountParams struct {
	ID           uuid.UUID `db:"id" json:"id"`
	InviteTokens int       `db:"invite_tokens" json:"invite_tokens"`
}

type UpdateUserParams

type UpdateUserParams struct {
	ID           uuid.UUID `db:"id" json:"id"`
	Name         string    `db:"name" json:"name"`
	PasswordHash string    `db:"password_hash" json:"password_hash"`
	Email        string    `db:"email" json:"email"`
}

type UpdateUserPasswordParams

type UpdateUserPasswordParams struct {
	ID           uuid.UUID `db:"id" json:"id"`
	PasswordHash string    `db:"password_hash" json:"password_hash"`
}

type User

type User struct {
	ID           uuid.UUID     `db:"id" json:"id"`
	Name         string        `db:"name" json:"name"`
	PasswordHash string        `db:"password_hash" json:"password_hash"`
	Email        string        `db:"email" json:"email"`
	ApiKey       string        `db:"api_key" json:"api_key"`
	ApiCalls     *int          `db:"api_calls" json:"api_calls"`
	LastApiCall  time.Time     `db:"last_api_call" json:"last_api_call"`
	CreatedAt    time.Time     `db:"created_at" json:"created_at"`
	UpdatedAt    time.Time     `db:"updated_at" json:"updated_at"`
	InvitedBy    uuid.NullUUID `db:"invited_by" json:"invited_by"`
	InviteTokens int           `db:"invite_tokens" json:"invite_tokens"`
}

type UserNotification

type UserNotification struct {
	UserID uuid.UUID        `db:"user_id" json:"user_id"`
	Type   NotificationType `db:"type" json:"type"`
}

type UserRole

type UserRole struct {
	UserID uuid.UUID `db:"user_id" json:"user_id"`
	Role   string    `db:"role" json:"role"`
}

type UserToken

type UserToken struct {
	ID        uuid.UUID `db:"id" json:"id"`
	Data      []byte    `db:"data" json:"data"`
	Type      string    `db:"type" json:"type"`
	CreatedAt time.Time `db:"created_at" json:"created_at"`
	ExpiresAt time.Time `db:"expires_at" json:"expires_at"`
}

type WithTxnFunc

type WithTxnFunc func(func(*Queries) error) error

WithTxnFunc is a function type for handling transactions The function receives a *Queries object initialized with the transaction

Jump to

Keyboard shortcuts

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