models

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Sep 2, 2020 License: AGPL-3.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultGthumbWidth int = 200

Variables

View Source
var DefaultMovieImage = "" /* 562-byte string literal not displayed */
View Source
var DefaultStudioImage = "" /* 562-byte string literal not displayed */
View Source
var DefaultTagImage = []byte(`<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://creativecommons.org/ns#"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
   width="200"
   height="200"
   id="svg2"
   version="1.1"
   inkscape:version="0.48.4 r9939"
   sodipodi:docname="tag.svg">
  <defs
     id="defs4" />
  <sodipodi:namedview
     id="base"
     pagecolor="#000000"
     bordercolor="#666666"
     borderopacity="1.0"
     inkscape:pageopacity="1"
     inkscape:pageshadow="2"
     inkscape:zoom="1"
     inkscape:cx="181.77771"
     inkscape:cy="279.72376"
     inkscape:document-units="px"
     inkscape:current-layer="layer1"
     showgrid="false"
     fit-margin-top="0"
     fit-margin-left="0"
     fit-margin-right="0"
     fit-margin-bottom="0"
     inkscape:window-width="1920"
     inkscape:window-height="1017"
     inkscape:window-x="-8"
     inkscape:window-y="-8"
     inkscape:window-maximized="1" />
  <metadata
     id="metadata7">
    <rdf:RDF>
      <cc:Work
         rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
        <dc:title></dc:title>
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <g
     inkscape:label="Layer 1"
     inkscape:groupmode="layer"
     id="layer1"
     transform="translate(-157.84358,-524.69522)">
    <path
       id="path2987"
       d="m 229.94314,669.26549 -36.08466,-36.08466 c -4.68653,-4.68653 -4.68653,-12.28468 0,-16.97121 l 36.08466,-36.08467 a 12.000453,12.000453 0 0 1 8.4856,-3.5148 l 74.91443,0 c 6.62761,0 12.00041,5.3728 12.00041,12.00041 l 0,72.16933 c 0,6.62761 -5.3728,12.00041 -12.00041,12.00041 l -74.91443,0 a 12.000453,12.000453 0 0 1 -8.4856,-3.51481 z m -13.45639,-53.05587 c -4.68653,4.68653 -4.68653,12.28468 0,16.97121 4.68652,4.68652 12.28467,4.68652 16.9712,0 4.68653,-4.68653 4.68653,-12.28468 0,-16.97121 -4.68653,-4.68652 -12.28468,-4.68652 -16.9712,0 z"
       inkscape:connector-curvature="0"
       style="fill:#ffffff;fill-opacity:1" />
  </g>
</svg>`)

Original Tag image from: https://fontawesome.com/icons/tag?style=solid Modified to change color and rotate Licensed under CC Attribution 4.0: https://fontawesome.com/license

Functions

func SQLGenKeys

func SQLGenKeys(i interface{}) string

https://github.com/jmoiron/sqlx/issues/410 sqlGenKeys is used for passing a struct and returning a string of keys for non empty key:values. These keys are formated keyname=:keyname with a comma seperating them

func SQLGenKeysPartial

func SQLGenKeysPartial(i interface{}) string

support a partial interface. When a partial interface is provided, keys will always be included if the value is not null. The partial interface must therefore consist of pointers

Types

type Gallery struct {
	ID        int             `db:"id" json:"id"`
	Path      string          `db:"path" json:"path"`
	Checksum  string          `db:"checksum" json:"checksum"`
	SceneID   sql.NullInt64   `db:"scene_id,omitempty" json:"scene_id"`
	CreatedAt SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

func (*Gallery) CountFiles added in v0.3.0

func (g *Gallery) CountFiles() int

func (*Gallery) GetFiles

func (g *Gallery) GetFiles(baseURL string) []*GalleryFilesType

func (*Gallery) GetImage

func (g *Gallery) GetImage(index int) []byte

func (*Gallery) GetThumbnail

func (g *Gallery) GetThumbnail(index int, width int) []byte

func (*Gallery) ImageCount added in v0.2.0

func (g *Gallery) ImageCount() int

type GalleryNullSceneID

type GalleryNullSceneID struct {
	SceneID sql.NullInt64
}

type GalleryQueryBuilder

type GalleryQueryBuilder struct{}

func NewGalleryQueryBuilder

func NewGalleryQueryBuilder() GalleryQueryBuilder

func (*GalleryQueryBuilder) All

func (qb *GalleryQueryBuilder) All() ([]*Gallery, error)

func (*GalleryQueryBuilder) ClearGalleryId

func (qb *GalleryQueryBuilder) ClearGalleryId(sceneID int, tx *sqlx.Tx) error

func (*GalleryQueryBuilder) Count

func (qb *GalleryQueryBuilder) Count() (int, error)

func (*GalleryQueryBuilder) Create

func (qb *GalleryQueryBuilder) Create(newGallery Gallery, tx *sqlx.Tx) (*Gallery, error)

func (*GalleryQueryBuilder) Destroy added in v0.2.0

func (qb *GalleryQueryBuilder) Destroy(id int, tx *sqlx.Tx) error

func (*GalleryQueryBuilder) Find

func (qb *GalleryQueryBuilder) Find(id int) (*Gallery, error)

func (*GalleryQueryBuilder) FindByChecksum

func (qb *GalleryQueryBuilder) FindByChecksum(checksum string, tx *sqlx.Tx) (*Gallery, error)

func (*GalleryQueryBuilder) FindByPath

func (qb *GalleryQueryBuilder) FindByPath(path string) (*Gallery, error)

func (*GalleryQueryBuilder) FindBySceneID

func (qb *GalleryQueryBuilder) FindBySceneID(sceneID int, tx *sqlx.Tx) (*Gallery, error)

func (*GalleryQueryBuilder) FindMany added in v0.3.0

func (qb *GalleryQueryBuilder) FindMany(ids []int) ([]*Gallery, error)

func (*GalleryQueryBuilder) Query

func (qb *GalleryQueryBuilder) Query(galleryFilter *GalleryFilterType, findFilter *FindFilterType) ([]*Gallery, int)

func (*GalleryQueryBuilder) Update

func (qb *GalleryQueryBuilder) Update(updatedGallery Gallery, tx *sqlx.Tx) (*Gallery, error)

func (*GalleryQueryBuilder) ValidGalleriesForScenePath

func (qb *GalleryQueryBuilder) ValidGalleriesForScenePath(scenePath string) ([]*Gallery, error)

type JSONTime

type JSONTime struct {
	time.Time
}

func (*JSONTime) MarshalJSON

func (jt *JSONTime) MarshalJSON() ([]byte, error)

func (*JSONTime) UnmarshalJSON

func (jt *JSONTime) UnmarshalJSON(b []byte) (err error)

type JoinsQueryBuilder

type JoinsQueryBuilder struct{}

func NewJoinsQueryBuilder

func NewJoinsQueryBuilder() JoinsQueryBuilder

func (*JoinsQueryBuilder) AddMoviesScene added in v0.2.0

func (qb *JoinsQueryBuilder) AddMoviesScene(sceneID int, movieID int, sceneIdx *int, tx *sqlx.Tx) (bool, error)

func (*JoinsQueryBuilder) AddPerformerScene

func (qb *JoinsQueryBuilder) AddPerformerScene(sceneID int, performerID int, tx *sqlx.Tx) (bool, error)

AddPerformerScene adds a performer to a scene. It does not make any change if the performer already exists on the scene. It returns true if scene performer was added.

func (*JoinsQueryBuilder) AddSceneTag

func (qb *JoinsQueryBuilder) AddSceneTag(sceneID int, tagID int, tx *sqlx.Tx) (bool, error)

AddSceneTag adds a tag to a scene. It does not make any change if the tag already exists on the scene. It returns true if scene tag was added.

func (*JoinsQueryBuilder) CreateMoviesScenes added in v0.2.0

func (qb *JoinsQueryBuilder) CreateMoviesScenes(newJoins []MoviesScenes, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) CreatePerformersScenes

func (qb *JoinsQueryBuilder) CreatePerformersScenes(newJoins []PerformersScenes, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) CreateSceneMarkersTags

func (qb *JoinsQueryBuilder) CreateSceneMarkersTags(newJoins []SceneMarkersTags, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) CreateScenesTags

func (qb *JoinsQueryBuilder) CreateScenesTags(newJoins []ScenesTags, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) DestroyMoviesScenes added in v0.2.0

func (qb *JoinsQueryBuilder) DestroyMoviesScenes(sceneID int, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) DestroyPerformersScenes

func (qb *JoinsQueryBuilder) DestroyPerformersScenes(sceneID int, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) DestroySceneMarkersTags

func (qb *JoinsQueryBuilder) DestroySceneMarkersTags(sceneMarkerID int, updatedJoins []SceneMarkersTags, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) DestroyScenesGalleries

func (qb *JoinsQueryBuilder) DestroyScenesGalleries(sceneID int, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) DestroyScenesMarkers

func (qb *JoinsQueryBuilder) DestroyScenesMarkers(sceneID int, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) DestroyScenesTags

func (qb *JoinsQueryBuilder) DestroyScenesTags(sceneID int, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) GetSceneMovies added in v0.2.0

func (qb *JoinsQueryBuilder) GetSceneMovies(sceneID int, tx *sqlx.Tx) ([]MoviesScenes, error)

func (*JoinsQueryBuilder) GetScenePerformers

func (qb *JoinsQueryBuilder) GetScenePerformers(sceneID int, tx *sqlx.Tx) ([]PerformersScenes, error)

func (*JoinsQueryBuilder) GetSceneTags

func (qb *JoinsQueryBuilder) GetSceneTags(sceneID int, tx *sqlx.Tx) ([]ScenesTags, error)

func (*JoinsQueryBuilder) UpdateMoviesScenes added in v0.2.0

func (qb *JoinsQueryBuilder) UpdateMoviesScenes(sceneID int, updatedJoins []MoviesScenes, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) UpdatePerformersScenes

func (qb *JoinsQueryBuilder) UpdatePerformersScenes(sceneID int, updatedJoins []PerformersScenes, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) UpdateSceneMarkersTags

func (qb *JoinsQueryBuilder) UpdateSceneMarkersTags(sceneMarkerID int, updatedJoins []SceneMarkersTags, tx *sqlx.Tx) error

func (*JoinsQueryBuilder) UpdateScenesTags

func (qb *JoinsQueryBuilder) UpdateScenesTags(sceneID int, updatedJoins []ScenesTags, tx *sqlx.Tx) error

type Movie added in v0.2.0

type Movie struct {
	ID        int             `db:"id" json:"id"`
	Checksum  string          `db:"checksum" json:"checksum"`
	Name      sql.NullString  `db:"name" json:"name"`
	Aliases   sql.NullString  `db:"aliases" json:"aliases"`
	Duration  sql.NullInt64   `db:"duration" json:"duration"`
	Date      SQLiteDate      `db:"date" json:"date"`
	Rating    sql.NullInt64   `db:"rating" json:"rating"`
	StudioID  sql.NullInt64   `db:"studio_id,omitempty" json:"studio_id"`
	Director  sql.NullString  `db:"director" json:"director"`
	Synopsis  sql.NullString  `db:"synopsis" json:"synopsis"`
	URL       sql.NullString  `db:"url" json:"url"`
	CreatedAt SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

type MoviePartial added in v0.2.0

type MoviePartial struct {
	ID        int              `db:"id" json:"id"`
	Checksum  *string          `db:"checksum" json:"checksum"`
	Name      *sql.NullString  `db:"name" json:"name"`
	Aliases   *sql.NullString  `db:"aliases" json:"aliases"`
	Duration  *sql.NullInt64   `db:"duration" json:"duration"`
	Date      *SQLiteDate      `db:"date" json:"date"`
	Rating    *sql.NullInt64   `db:"rating" json:"rating"`
	StudioID  *sql.NullInt64   `db:"studio_id,omitempty" json:"studio_id"`
	Director  *sql.NullString  `db:"director" json:"director"`
	Synopsis  *sql.NullString  `db:"synopsis" json:"synopsis"`
	URL       *sql.NullString  `db:"url" json:"url"`
	CreatedAt *SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt *SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

type MovieQueryBuilder added in v0.2.0

type MovieQueryBuilder struct{}

func NewMovieQueryBuilder added in v0.2.0

func NewMovieQueryBuilder() MovieQueryBuilder

func (*MovieQueryBuilder) All added in v0.2.0

func (qb *MovieQueryBuilder) All() ([]*Movie, error)

func (*MovieQueryBuilder) AllSlim added in v0.2.0

func (qb *MovieQueryBuilder) AllSlim() ([]*Movie, error)

func (*MovieQueryBuilder) Count added in v0.2.0

func (qb *MovieQueryBuilder) Count() (int, error)

func (*MovieQueryBuilder) Create added in v0.2.0

func (qb *MovieQueryBuilder) Create(newMovie Movie, tx *sqlx.Tx) (*Movie, error)

func (*MovieQueryBuilder) Destroy added in v0.2.0

func (qb *MovieQueryBuilder) Destroy(id string, tx *sqlx.Tx) error

func (*MovieQueryBuilder) DestroyMovieImages added in v0.3.0

func (qb *MovieQueryBuilder) DestroyMovieImages(movieID int, tx *sqlx.Tx) error

func (*MovieQueryBuilder) Find added in v0.2.0

func (qb *MovieQueryBuilder) Find(id int, tx *sqlx.Tx) (*Movie, error)

func (*MovieQueryBuilder) FindByName added in v0.2.0

func (qb *MovieQueryBuilder) FindByName(name string, tx *sqlx.Tx, nocase bool) (*Movie, error)

func (*MovieQueryBuilder) FindByNames added in v0.2.0

func (qb *MovieQueryBuilder) FindByNames(names []string, tx *sqlx.Tx, nocase bool) ([]*Movie, error)

func (*MovieQueryBuilder) FindBySceneID added in v0.2.0

func (qb *MovieQueryBuilder) FindBySceneID(sceneID int, tx *sqlx.Tx) ([]*Movie, error)

func (*MovieQueryBuilder) GetBackImage added in v0.3.0

func (qb *MovieQueryBuilder) GetBackImage(movieID int, tx *sqlx.Tx) ([]byte, error)

func (*MovieQueryBuilder) GetFrontImage added in v0.3.0

func (qb *MovieQueryBuilder) GetFrontImage(movieID int, tx *sqlx.Tx) ([]byte, error)

func (*MovieQueryBuilder) Query added in v0.2.0

func (qb *MovieQueryBuilder) Query(movieFilter *MovieFilterType, findFilter *FindFilterType) ([]*Movie, int)

func (*MovieQueryBuilder) Update added in v0.2.0

func (qb *MovieQueryBuilder) Update(updatedMovie MoviePartial, tx *sqlx.Tx) (*Movie, error)

func (*MovieQueryBuilder) UpdateMovieImages added in v0.3.0

func (qb *MovieQueryBuilder) UpdateMovieImages(movieID int, frontImage []byte, backImage []byte, tx *sqlx.Tx) error

type MoviesScenes added in v0.2.0

type MoviesScenes struct {
	MovieID    int           `db:"movie_id" json:"movie_id"`
	SceneID    int           `db:"scene_id" json:"scene_id"`
	SceneIndex sql.NullInt64 `db:"scene_index" json:"scene_index"`
}

type Performer

type Performer struct {
	ID           int             `db:"id" json:"id"`
	Checksum     string          `db:"checksum" json:"checksum"`
	Name         sql.NullString  `db:"name" json:"name"`
	Gender       sql.NullString  `db:"gender" json:"gender"`
	URL          sql.NullString  `db:"url" json:"url"`
	Twitter      sql.NullString  `db:"twitter" json:"twitter"`
	Instagram    sql.NullString  `db:"instagram" json:"instagram"`
	Birthdate    SQLiteDate      `db:"birthdate" json:"birthdate"`
	Ethnicity    sql.NullString  `db:"ethnicity" json:"ethnicity"`
	Country      sql.NullString  `db:"country" json:"country"`
	EyeColor     sql.NullString  `db:"eye_color" json:"eye_color"`
	Height       sql.NullString  `db:"height" json:"height"`
	Measurements sql.NullString  `db:"measurements" json:"measurements"`
	FakeTits     sql.NullString  `db:"fake_tits" json:"fake_tits"`
	CareerLength sql.NullString  `db:"career_length" json:"career_length"`
	Tattoos      sql.NullString  `db:"tattoos" json:"tattoos"`
	Piercings    sql.NullString  `db:"piercings" json:"piercings"`
	Aliases      sql.NullString  `db:"aliases" json:"aliases"`
	Favorite     sql.NullBool    `db:"favorite" json:"favorite"`
	CreatedAt    SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt    SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

type PerformerQueryBuilder

type PerformerQueryBuilder struct{}

func NewPerformerQueryBuilder

func NewPerformerQueryBuilder() PerformerQueryBuilder

func (*PerformerQueryBuilder) All

func (qb *PerformerQueryBuilder) All() ([]*Performer, error)

func (*PerformerQueryBuilder) AllSlim added in v0.2.0

func (qb *PerformerQueryBuilder) AllSlim() ([]*Performer, error)

func (*PerformerQueryBuilder) Count

func (qb *PerformerQueryBuilder) Count() (int, error)

func (*PerformerQueryBuilder) Create

func (qb *PerformerQueryBuilder) Create(newPerformer Performer, tx *sqlx.Tx) (*Performer, error)

func (*PerformerQueryBuilder) Destroy

func (qb *PerformerQueryBuilder) Destroy(id string, tx *sqlx.Tx) error

func (*PerformerQueryBuilder) DestroyPerformerImage added in v0.3.0

func (qb *PerformerQueryBuilder) DestroyPerformerImage(performerID int, tx *sqlx.Tx) error

func (*PerformerQueryBuilder) Find

func (qb *PerformerQueryBuilder) Find(id int) (*Performer, error)

func (*PerformerQueryBuilder) FindByNames

func (qb *PerformerQueryBuilder) FindByNames(names []string, tx *sqlx.Tx, nocase bool) ([]*Performer, error)

func (*PerformerQueryBuilder) FindBySceneID

func (qb *PerformerQueryBuilder) FindBySceneID(sceneID int, tx *sqlx.Tx) ([]*Performer, error)

func (*PerformerQueryBuilder) FindNameBySceneID added in v0.2.0

func (qb *PerformerQueryBuilder) FindNameBySceneID(sceneID int, tx *sqlx.Tx) ([]*Performer, error)

func (*PerformerQueryBuilder) GetPerformerImage added in v0.3.0

func (qb *PerformerQueryBuilder) GetPerformerImage(performerID int, tx *sqlx.Tx) ([]byte, error)

func (*PerformerQueryBuilder) Query

func (qb *PerformerQueryBuilder) Query(performerFilter *PerformerFilterType, findFilter *FindFilterType) ([]*Performer, int)

func (*PerformerQueryBuilder) Update

func (qb *PerformerQueryBuilder) Update(updatedPerformer Performer, tx *sqlx.Tx) (*Performer, error)

func (*PerformerQueryBuilder) UpdatePerformerImage added in v0.3.0

func (qb *PerformerQueryBuilder) UpdatePerformerImage(performerID int, image []byte, tx *sqlx.Tx) error

type PerformersScenes

type PerformersScenes struct {
	PerformerID int `db:"performer_id" json:"performer_id"`
	SceneID     int `db:"scene_id" json:"scene_id"`
}

type SQLiteDate

type SQLiteDate struct {
	String string
	Valid  bool
}

func (*SQLiteDate) Scan

func (t *SQLiteDate) Scan(value interface{}) error

Scan implements the Scanner interface.

func (SQLiteDate) Value

func (t SQLiteDate) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type SQLiteTimestamp

type SQLiteTimestamp struct {
	Timestamp time.Time
}

func (*SQLiteTimestamp) Scan

func (t *SQLiteTimestamp) Scan(value interface{}) error

Scan implements the Scanner interface.

func (SQLiteTimestamp) Value

func (t SQLiteTimestamp) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type Scene

type Scene struct {
	ID         int             `db:"id" json:"id"`
	Checksum   sql.NullString  `db:"checksum" json:"checksum"`
	OSHash     sql.NullString  `db:"oshash" json:"oshash"`
	Path       string          `db:"path" json:"path"`
	Title      sql.NullString  `db:"title" json:"title"`
	Details    sql.NullString  `db:"details" json:"details"`
	URL        sql.NullString  `db:"url" json:"url"`
	Date       SQLiteDate      `db:"date" json:"date"`
	Rating     sql.NullInt64   `db:"rating" json:"rating"`
	OCounter   int             `db:"o_counter" json:"o_counter"`
	Size       sql.NullString  `db:"size" json:"size"`
	Duration   sql.NullFloat64 `db:"duration" json:"duration"`
	VideoCodec sql.NullString  `db:"video_codec" json:"video_codec"`
	Format     sql.NullString  `db:"format" json:"format_name"`
	AudioCodec sql.NullString  `db:"audio_codec" json:"audio_codec"`
	Width      sql.NullInt64   `db:"width" json:"width"`
	Height     sql.NullInt64   `db:"height" json:"height"`
	Framerate  sql.NullFloat64 `db:"framerate" json:"framerate"`
	Bitrate    sql.NullInt64   `db:"bitrate" json:"bitrate"`
	StudioID   sql.NullInt64   `db:"studio_id,omitempty" json:"studio_id"`
	CreatedAt  SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt  SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

Scene stores the metadata for a single video scene.

func (Scene) GetHash added in v0.3.0

func (s Scene) GetHash(hashAlgorithm HashAlgorithm) string

GetHash returns the hash of the scene, based on the hash algorithm provided. If hash algorithm is MD5, then Checksum is returned. Otherwise, OSHash is returned.

func (Scene) GetTitle

func (s Scene) GetTitle() string

GetTitle returns the title of the scene. If the Title field is empty, then the base filename is returned.

type SceneFileType

type SceneFileType struct {
	Size       *string  `graphql:"size" json:"size"`
	Duration   *float64 `graphql:"duration" json:"duration"`
	VideoCodec *string  `graphql:"video_codec" json:"video_codec"`
	AudioCodec *string  `graphql:"audio_codec" json:"audio_codec"`
	Width      *int     `graphql:"width" json:"width"`
	Height     *int     `graphql:"height" json:"height"`
	Framerate  *float64 `graphql:"framerate" json:"framerate"`
	Bitrate    *int     `graphql:"bitrate" json:"bitrate"`
}

SceneFileType represents the file metadata for a scene.

type SceneMarker

type SceneMarker struct {
	ID           int             `db:"id" json:"id"`
	Title        string          `db:"title" json:"title"`
	Seconds      float64         `db:"seconds" json:"seconds"`
	PrimaryTagID int             `db:"primary_tag_id" json:"primary_tag_id"`
	SceneID      sql.NullInt64   `db:"scene_id,omitempty" json:"scene_id"`
	CreatedAt    SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt    SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

type SceneMarkerQueryBuilder

type SceneMarkerQueryBuilder struct{}

func NewSceneMarkerQueryBuilder

func NewSceneMarkerQueryBuilder() SceneMarkerQueryBuilder

func (*SceneMarkerQueryBuilder) CountByTagID

func (qb *SceneMarkerQueryBuilder) CountByTagID(tagID int) (int, error)

func (*SceneMarkerQueryBuilder) Create

func (qb *SceneMarkerQueryBuilder) Create(newSceneMarker SceneMarker, tx *sqlx.Tx) (*SceneMarker, error)

func (*SceneMarkerQueryBuilder) Destroy

func (qb *SceneMarkerQueryBuilder) Destroy(id string, tx *sqlx.Tx) error

func (*SceneMarkerQueryBuilder) Find

func (qb *SceneMarkerQueryBuilder) Find(id int) (*SceneMarker, error)

func (*SceneMarkerQueryBuilder) FindBySceneID

func (qb *SceneMarkerQueryBuilder) FindBySceneID(sceneID int, tx *sqlx.Tx) ([]*SceneMarker, error)

func (*SceneMarkerQueryBuilder) FindMany added in v0.3.0

func (qb *SceneMarkerQueryBuilder) FindMany(ids []int) ([]*SceneMarker, error)

func (*SceneMarkerQueryBuilder) GetMarkerStrings

func (qb *SceneMarkerQueryBuilder) GetMarkerStrings(q *string, sort *string) ([]*MarkerStringsResultType, error)

func (*SceneMarkerQueryBuilder) Query

func (qb *SceneMarkerQueryBuilder) Query(sceneMarkerFilter *SceneMarkerFilterType, findFilter *FindFilterType) ([]*SceneMarker, int)

func (*SceneMarkerQueryBuilder) Update

func (qb *SceneMarkerQueryBuilder) Update(updatedSceneMarker SceneMarker, tx *sqlx.Tx) (*SceneMarker, error)

func (*SceneMarkerQueryBuilder) Wall

func (qb *SceneMarkerQueryBuilder) Wall(q *string) ([]*SceneMarker, error)

type SceneMarkersTags

type SceneMarkersTags struct {
	SceneMarkerID int `db:"scene_marker_id" json:"scene_marker_id"`
	TagID         int `db:"tag_id" json:"tag_id"`
}

type ScenePartial

type ScenePartial struct {
	ID         int              `db:"id" json:"id"`
	Checksum   *sql.NullString  `db:"checksum" json:"checksum"`
	OSHash     *sql.NullString  `db:"oshash" json:"oshash"`
	Path       *string          `db:"path" json:"path"`
	Title      *sql.NullString  `db:"title" json:"title"`
	Details    *sql.NullString  `db:"details" json:"details"`
	URL        *sql.NullString  `db:"url" json:"url"`
	Date       *SQLiteDate      `db:"date" json:"date"`
	Rating     *sql.NullInt64   `db:"rating" json:"rating"`
	Size       *sql.NullString  `db:"size" json:"size"`
	Duration   *sql.NullFloat64 `db:"duration" json:"duration"`
	VideoCodec *sql.NullString  `db:"video_codec" json:"video_codec"`
	AudioCodec *sql.NullString  `db:"audio_codec" json:"audio_codec"`
	Width      *sql.NullInt64   `db:"width" json:"width"`
	Height     *sql.NullInt64   `db:"height" json:"height"`
	Framerate  *sql.NullFloat64 `db:"framerate" json:"framerate"`
	Bitrate    *sql.NullInt64   `db:"bitrate" json:"bitrate"`
	StudioID   *sql.NullInt64   `db:"studio_id,omitempty" json:"studio_id"`
	MovieID    *sql.NullInt64   `db:"movie_id,omitempty" json:"movie_id"`
	CreatedAt  *SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt  *SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

ScenePartial represents part of a Scene object. It is used to update the database entry. Only non-nil fields will be updated.

type SceneQueryBuilder

type SceneQueryBuilder struct{}

func NewSceneQueryBuilder

func NewSceneQueryBuilder() SceneQueryBuilder

func (*SceneQueryBuilder) All

func (qb *SceneQueryBuilder) All() ([]*Scene, error)

func (*SceneQueryBuilder) Count

func (qb *SceneQueryBuilder) Count() (int, error)

func (*SceneQueryBuilder) CountByMovieID added in v0.2.0

func (qb *SceneQueryBuilder) CountByMovieID(movieID int) (int, error)

func (*SceneQueryBuilder) CountByPerformerID

func (qb *SceneQueryBuilder) CountByPerformerID(performerID int) (int, error)

func (*SceneQueryBuilder) CountByStudioID

func (qb *SceneQueryBuilder) CountByStudioID(studioID int) (int, error)

func (*SceneQueryBuilder) CountByTagID

func (qb *SceneQueryBuilder) CountByTagID(tagID int) (int, error)

func (*SceneQueryBuilder) CountMissingChecksum added in v0.3.0

func (qb *SceneQueryBuilder) CountMissingChecksum() (int, error)

CountMissingChecksum returns the number of scenes missing a checksum value.

func (*SceneQueryBuilder) CountMissingOSHash added in v0.3.0

func (qb *SceneQueryBuilder) CountMissingOSHash() (int, error)

CountMissingOSHash returns the number of scenes missing an oshash value.

func (*SceneQueryBuilder) Create

func (qb *SceneQueryBuilder) Create(newScene Scene, tx *sqlx.Tx) (*Scene, error)

func (*SceneQueryBuilder) DecrementOCounter

func (qb *SceneQueryBuilder) DecrementOCounter(id int, tx *sqlx.Tx) (int, error)

func (*SceneQueryBuilder) Destroy

func (qb *SceneQueryBuilder) Destroy(id string, tx *sqlx.Tx) error

func (*SceneQueryBuilder) DestroySceneCover added in v0.3.0

func (qb *SceneQueryBuilder) DestroySceneCover(sceneID int, tx *sqlx.Tx) error

func (*SceneQueryBuilder) Find

func (qb *SceneQueryBuilder) Find(id int) (*Scene, error)

func (*SceneQueryBuilder) FindByChecksum

func (qb *SceneQueryBuilder) FindByChecksum(checksum string) (*Scene, error)

func (*SceneQueryBuilder) FindByMovieID added in v0.2.0

func (qb *SceneQueryBuilder) FindByMovieID(movieID int) ([]*Scene, error)

func (*SceneQueryBuilder) FindByOSHash added in v0.3.0

func (qb *SceneQueryBuilder) FindByOSHash(oshash string) (*Scene, error)

func (*SceneQueryBuilder) FindByPath

func (qb *SceneQueryBuilder) FindByPath(path string) (*Scene, error)

func (*SceneQueryBuilder) FindByPerformerID

func (qb *SceneQueryBuilder) FindByPerformerID(performerID int) ([]*Scene, error)

func (*SceneQueryBuilder) FindByStudioID

func (qb *SceneQueryBuilder) FindByStudioID(studioID int) ([]*Scene, error)

func (*SceneQueryBuilder) FindMany added in v0.3.0

func (qb *SceneQueryBuilder) FindMany(ids []int) ([]*Scene, error)

func (*SceneQueryBuilder) GetSceneCover added in v0.3.0

func (qb *SceneQueryBuilder) GetSceneCover(sceneID int, tx *sqlx.Tx) ([]byte, error)

func (*SceneQueryBuilder) IncrementOCounter

func (qb *SceneQueryBuilder) IncrementOCounter(id int, tx *sqlx.Tx) (int, error)

func (*SceneQueryBuilder) Query

func (qb *SceneQueryBuilder) Query(sceneFilter *SceneFilterType, findFilter *FindFilterType) ([]*Scene, int)

func (*SceneQueryBuilder) QueryAllByPathRegex

func (qb *SceneQueryBuilder) QueryAllByPathRegex(regex string) ([]*Scene, error)

func (*SceneQueryBuilder) QueryByPathRegex

func (qb *SceneQueryBuilder) QueryByPathRegex(findFilter *FindFilterType) ([]*Scene, int)

func (*SceneQueryBuilder) ResetOCounter

func (qb *SceneQueryBuilder) ResetOCounter(id int, tx *sqlx.Tx) (int, error)

func (*SceneQueryBuilder) SizeCount added in v0.2.0

func (qb *SceneQueryBuilder) SizeCount() (string, error)

func (*SceneQueryBuilder) Update

func (qb *SceneQueryBuilder) Update(updatedScene ScenePartial, tx *sqlx.Tx) (*Scene, error)

func (*SceneQueryBuilder) UpdateChecksum added in v0.3.0

func (qb *SceneQueryBuilder) UpdateChecksum(id int, checksum string, tx *sqlx.Tx) error

func (*SceneQueryBuilder) UpdateFormat added in v0.2.0

func (qb *SceneQueryBuilder) UpdateFormat(id int, format string, tx *sqlx.Tx) error

func (*SceneQueryBuilder) UpdateOSHash added in v0.3.0

func (qb *SceneQueryBuilder) UpdateOSHash(id int, oshash string, tx *sqlx.Tx) error

func (*SceneQueryBuilder) UpdateSceneCover added in v0.3.0

func (qb *SceneQueryBuilder) UpdateSceneCover(sceneID int, cover []byte, tx *sqlx.Tx) error

func (*SceneQueryBuilder) Wall

func (qb *SceneQueryBuilder) Wall(q *string) ([]*Scene, error)

type ScenesTags

type ScenesTags struct {
	SceneID int `db:"scene_id" json:"scene_id"`
	TagID   int `db:"tag_id" json:"tag_id"`
}

type ScrapedItem

type ScrapedItem struct {
	ID              int             `db:"id" json:"id"`
	Title           sql.NullString  `db:"title" json:"title"`
	Description     sql.NullString  `db:"description" json:"description"`
	URL             sql.NullString  `db:"url" json:"url"`
	Date            SQLiteDate      `db:"date" json:"date"`
	Rating          sql.NullString  `db:"rating" json:"rating"`
	Tags            sql.NullString  `db:"tags" json:"tags"`
	Models          sql.NullString  `db:"models" json:"models"`
	Episode         sql.NullInt64   `db:"episode" json:"episode"`
	GalleryFilename sql.NullString  `db:"gallery_filename" json:"gallery_filename"`
	GalleryURL      sql.NullString  `db:"gallery_url" json:"gallery_url"`
	VideoFilename   sql.NullString  `db:"video_filename" json:"video_filename"`
	VideoURL        sql.NullString  `db:"video_url" json:"video_url"`
	StudioID        sql.NullInt64   `db:"studio_id,omitempty" json:"studio_id"`
	CreatedAt       SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt       SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

type ScrapedItemQueryBuilder

type ScrapedItemQueryBuilder struct{}

func NewScrapedItemQueryBuilder

func NewScrapedItemQueryBuilder() ScrapedItemQueryBuilder

func (*ScrapedItemQueryBuilder) All

func (qb *ScrapedItemQueryBuilder) All() ([]*ScrapedItem, error)

func (*ScrapedItemQueryBuilder) Create

func (qb *ScrapedItemQueryBuilder) Create(newScrapedItem ScrapedItem, tx *sqlx.Tx) (*ScrapedItem, error)

func (*ScrapedItemQueryBuilder) Find

func (qb *ScrapedItemQueryBuilder) Find(id int) (*ScrapedItem, error)

func (*ScrapedItemQueryBuilder) Update

func (qb *ScrapedItemQueryBuilder) Update(updatedScrapedItem ScrapedItem, tx *sqlx.Tx) (*ScrapedItem, error)

type ScrapedMovie added in v0.3.0

type ScrapedMovie struct {
	Name       *string             `graphql:"name" json:"name"`
	Aliases    *string             `graphql:"aliases" json:"aliases"`
	Duration   *string             `graphql:"duration" json:"duration"`
	Date       *string             `graphql:"date" json:"date"`
	Rating     *string             `graphql:"rating" json:"rating"`
	Director   *string             `graphql:"director" json:"director"`
	Studio     *ScrapedMovieStudio `graphql:"studio" json:"studio"`
	Synopsis   *string             `graphql:"synopsis" json:"synopsis"`
	URL        *string             `graphql:"url" json:"url"`
	FrontImage *string             `graphql:"front_image" json:"front_image"`
	BackImage  *string             `graphql:"back_image" json:"back_image"`
}

type ScrapedMovieStudio added in v0.3.0

type ScrapedMovieStudio struct {
	// Set if studio matched
	ID   *string `graphql:"id" json:"id"`
	Name string  `graphql:"name" json:"name"`
	URL  *string `graphql:"url" json:"url"`
}

type ScrapedPerformer

type ScrapedPerformer struct {
	Name         *string `graphql:"name" json:"name"`
	Gender       *string `graphql:"gender" json:"gender"`
	URL          *string `graphql:"url" json:"url"`
	Twitter      *string `graphql:"twitter" json:"twitter"`
	Instagram    *string `graphql:"instagram" json:"instagram"`
	Birthdate    *string `graphql:"birthdate" json:"birthdate"`
	Ethnicity    *string `graphql:"ethnicity" json:"ethnicity"`
	Country      *string `graphql:"country" json:"country"`
	EyeColor     *string `graphql:"eye_color" json:"eye_color"`
	Height       *string `graphql:"height" json:"height"`
	Measurements *string `graphql:"measurements" json:"measurements"`
	FakeTits     *string `graphql:"fake_tits" json:"fake_tits"`
	CareerLength *string `graphql:"career_length" json:"career_length"`
	Tattoos      *string `graphql:"tattoos" json:"tattoos"`
	Piercings    *string `graphql:"piercings" json:"piercings"`
	Aliases      *string `graphql:"aliases" json:"aliases"`
	Image        *string `graphql:"image" json:"image"`
}

type ScrapedPerformerStash added in v0.2.0

type ScrapedPerformerStash struct {
	Name         *string `graphql:"name" json:"name"`
	Gender       *string `graphql:"gender" json:"gender"`
	URL          *string `graphql:"url" json:"url"`
	Twitter      *string `graphql:"twitter" json:"twitter"`
	Instagram    *string `graphql:"instagram" json:"instagram"`
	Birthdate    *string `graphql:"birthdate" json:"birthdate"`
	Ethnicity    *string `graphql:"ethnicity" json:"ethnicity"`
	Country      *string `graphql:"country" json:"country"`
	EyeColor     *string `graphql:"eye_color" json:"eye_color"`
	Height       *string `graphql:"height" json:"height"`
	Measurements *string `graphql:"measurements" json:"measurements"`
	FakeTits     *string `graphql:"fake_tits" json:"fake_tits"`
	CareerLength *string `graphql:"career_length" json:"career_length"`
	Tattoos      *string `graphql:"tattoos" json:"tattoos"`
	Piercings    *string `graphql:"piercings" json:"piercings"`
	Aliases      *string `graphql:"aliases" json:"aliases"`
}

this type has no Image field

type ScrapedScene

type ScrapedScene struct {
	Title      *string                  `graphql:"title" json:"title"`
	Details    *string                  `graphql:"details" json:"details"`
	URL        *string                  `graphql:"url" json:"url"`
	Date       *string                  `graphql:"date" json:"date"`
	Image      *string                  `graphql:"image" json:"image"`
	File       *SceneFileType           `graphql:"file" json:"file"`
	Studio     *ScrapedSceneStudio      `graphql:"studio" json:"studio"`
	Movies     []*ScrapedSceneMovie     `graphql:"movies" json:"movies"`
	Tags       []*ScrapedSceneTag       `graphql:"tags" json:"tags"`
	Performers []*ScrapedScenePerformer `graphql:"performers" json:"performers"`
}

type ScrapedSceneMovie added in v0.2.0

type ScrapedSceneMovie struct {
	// Set if movie matched
	ID       *string `graphql:"id" json:"id"`
	Name     string  `graphql:"name" json:"name"`
	Aliases  string  `graphql:"aliases" json:"aliases"`
	Duration string  `graphql:"duration" json:"duration"`
	Date     string  `graphql:"date" json:"date"`
	Rating   string  `graphql:"rating" json:"rating"`
	Director string  `graphql:"director" json:"director"`
	Synopsis string  `graphql:"synopsis" json:"synopsis"`
	URL      *string `graphql:"url" json:"url"`
}

type ScrapedScenePerformer

type ScrapedScenePerformer struct {
	// Set if performer matched
	ID           *string `graphql:"id" json:"id"`
	Name         string  `graphql:"name" json:"name"`
	Gender       *string `graphql:"gender" json:"gender"`
	URL          *string `graphql:"url" json:"url"`
	Twitter      *string `graphql:"twitter" json:"twitter"`
	Instagram    *string `graphql:"instagram" json:"instagram"`
	Birthdate    *string `graphql:"birthdate" json:"birthdate"`
	Ethnicity    *string `graphql:"ethnicity" json:"ethnicity"`
	Country      *string `graphql:"country" json:"country"`
	EyeColor     *string `graphql:"eye_color" json:"eye_color"`
	Height       *string `graphql:"height" json:"height"`
	Measurements *string `graphql:"measurements" json:"measurements"`
	FakeTits     *string `graphql:"fake_tits" json:"fake_tits"`
	CareerLength *string `graphql:"career_length" json:"career_length"`
	Tattoos      *string `graphql:"tattoos" json:"tattoos"`
	Piercings    *string `graphql:"piercings" json:"piercings"`
	Aliases      *string `graphql:"aliases" json:"aliases"`
}

type ScrapedSceneStash added in v0.2.0

type ScrapedSceneStash struct {
	ID         string                   `graphql:"id" json:"id"`
	Title      *string                  `graphql:"title" json:"title"`
	Details    *string                  `graphql:"details" json:"details"`
	URL        *string                  `graphql:"url" json:"url"`
	Date       *string                  `graphql:"date" json:"date"`
	File       *SceneFileType           `graphql:"file" json:"file"`
	Studio     *ScrapedSceneStudio      `graphql:"studio" json:"studio"`
	Tags       []*ScrapedSceneTag       `graphql:"tags" json:"tags"`
	Performers []*ScrapedScenePerformer `graphql:"performers" json:"performers"`
}

stash doesn't return image, and we need id

type ScrapedSceneStudio

type ScrapedSceneStudio struct {
	// Set if studio matched
	ID   *string `graphql:"id" json:"id"`
	Name string  `graphql:"name" json:"name"`
	URL  *string `graphql:"url" json:"url"`
}

type ScrapedSceneTag

type ScrapedSceneTag struct {
	// Set if tag matched
	ID   *string `graphql:"stored_id" json:"stored_id"`
	Name string  `graphql:"name" json:"name"`
}

type Studio

type Studio struct {
	ID        int             `db:"id" json:"id"`
	Checksum  string          `db:"checksum" json:"checksum"`
	Name      sql.NullString  `db:"name" json:"name"`
	URL       sql.NullString  `db:"url" json:"url"`
	ParentID  sql.NullInt64   `db:"parent_id,omitempty" json:"parent_id"`
	CreatedAt SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

type StudioPartial added in v0.3.0

type StudioPartial struct {
	ID        int              `db:"id" json:"id"`
	Checksum  *string          `db:"checksum" json:"checksum"`
	Name      *sql.NullString  `db:"name" json:"name"`
	URL       *sql.NullString  `db:"url" json:"url"`
	ParentID  *sql.NullInt64   `db:"parent_id,omitempty" json:"parent_id"`
	CreatedAt *SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt *SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

type StudioQueryBuilder

type StudioQueryBuilder struct{}

func NewStudioQueryBuilder

func NewStudioQueryBuilder() StudioQueryBuilder

func (*StudioQueryBuilder) All

func (qb *StudioQueryBuilder) All() ([]*Studio, error)

func (*StudioQueryBuilder) AllSlim added in v0.2.0

func (qb *StudioQueryBuilder) AllSlim() ([]*Studio, error)

func (*StudioQueryBuilder) Count

func (qb *StudioQueryBuilder) Count() (int, error)

func (*StudioQueryBuilder) Create

func (qb *StudioQueryBuilder) Create(newStudio Studio, tx *sqlx.Tx) (*Studio, error)

func (*StudioQueryBuilder) Destroy

func (qb *StudioQueryBuilder) Destroy(id string, tx *sqlx.Tx) error

func (*StudioQueryBuilder) DestroyStudioImage added in v0.3.0

func (qb *StudioQueryBuilder) DestroyStudioImage(studioID int, tx *sqlx.Tx) error

func (*StudioQueryBuilder) Find

func (qb *StudioQueryBuilder) Find(id int, tx *sqlx.Tx) (*Studio, error)

func (*StudioQueryBuilder) FindByName

func (qb *StudioQueryBuilder) FindByName(name string, tx *sqlx.Tx, nocase bool) (*Studio, error)

func (*StudioQueryBuilder) FindBySceneID

func (qb *StudioQueryBuilder) FindBySceneID(sceneID int) (*Studio, error)

func (*StudioQueryBuilder) FindChildren added in v0.3.0

func (qb *StudioQueryBuilder) FindChildren(id int, tx *sqlx.Tx) ([]*Studio, error)

func (*StudioQueryBuilder) GetStudioImage added in v0.3.0

func (qb *StudioQueryBuilder) GetStudioImage(studioID int, tx *sqlx.Tx) ([]byte, error)

func (*StudioQueryBuilder) Query

func (qb *StudioQueryBuilder) Query(studioFilter *StudioFilterType, findFilter *FindFilterType) ([]*Studio, int)

func (*StudioQueryBuilder) Update

func (qb *StudioQueryBuilder) Update(updatedStudio StudioPartial, tx *sqlx.Tx) (*Studio, error)

func (*StudioQueryBuilder) UpdateStudioImage added in v0.3.0

func (qb *StudioQueryBuilder) UpdateStudioImage(studioID int, image []byte, tx *sqlx.Tx) error

type Tag

type Tag struct {
	ID        int             `db:"id" json:"id"`
	Name      string          `db:"name" json:"name"` // TODO make schema not null
	CreatedAt SQLiteTimestamp `db:"created_at" json:"created_at"`
	UpdatedAt SQLiteTimestamp `db:"updated_at" json:"updated_at"`
}

type TagQueryBuilder

type TagQueryBuilder struct{}

func NewTagQueryBuilder

func NewTagQueryBuilder() TagQueryBuilder

func (*TagQueryBuilder) All

func (qb *TagQueryBuilder) All() ([]*Tag, error)

func (*TagQueryBuilder) AllSlim added in v0.2.0

func (qb *TagQueryBuilder) AllSlim() ([]*Tag, error)

func (*TagQueryBuilder) Count

func (qb *TagQueryBuilder) Count() (int, error)

func (*TagQueryBuilder) Create

func (qb *TagQueryBuilder) Create(newTag Tag, tx *sqlx.Tx) (*Tag, error)

func (*TagQueryBuilder) Destroy

func (qb *TagQueryBuilder) Destroy(id string, tx *sqlx.Tx) error

func (*TagQueryBuilder) DestroyTagImage added in v0.3.0

func (qb *TagQueryBuilder) DestroyTagImage(tagID int, tx *sqlx.Tx) error

func (*TagQueryBuilder) Find

func (qb *TagQueryBuilder) Find(id int, tx *sqlx.Tx) (*Tag, error)

func (*TagQueryBuilder) FindByName

func (qb *TagQueryBuilder) FindByName(name string, tx *sqlx.Tx, nocase bool) (*Tag, error)

func (*TagQueryBuilder) FindByNames

func (qb *TagQueryBuilder) FindByNames(names []string, tx *sqlx.Tx, nocase bool) ([]*Tag, error)

func (*TagQueryBuilder) FindBySceneID

func (qb *TagQueryBuilder) FindBySceneID(sceneID int, tx *sqlx.Tx) ([]*Tag, error)

func (*TagQueryBuilder) FindBySceneMarkerID

func (qb *TagQueryBuilder) FindBySceneMarkerID(sceneMarkerID int, tx *sqlx.Tx) ([]*Tag, error)

func (*TagQueryBuilder) GetTagImage added in v0.3.0

func (qb *TagQueryBuilder) GetTagImage(tagID int, tx *sqlx.Tx) ([]byte, error)

func (*TagQueryBuilder) Query

func (qb *TagQueryBuilder) Query(tagFilter *TagFilterType, findFilter *FindFilterType) ([]*Tag, int)

func (*TagQueryBuilder) Update

func (qb *TagQueryBuilder) Update(updatedTag Tag, tx *sqlx.Tx) (*Tag, error)

func (*TagQueryBuilder) UpdateTagImage added in v0.3.0

func (qb *TagQueryBuilder) UpdateTagImage(tagID int, image []byte, tx *sqlx.Tx) error

Jump to

Keyboard shortcuts

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