Documentation
¶
Overview ¶
This file is autogenerated by Golem Do NOT make modifications, they will be lost
Index ¶
- func Background(m Medium) string
- func Cover(m Medium) string
- func DownloadsCreate(c *gin.Context)
- func DownloadsDelete(c *gin.Context, id string)
- func DownloadsIndex(c *gin.Context)
- func DownloadsShow(c *gin.Context, id string)
- func DownloadsUpdate(c *gin.Context, id string)
- func EpisodesUpdate(c *gin.Context, id string)
- func Index(c *gin.Context)
- func MoviesCreate(c *gin.Context)
- func MoviesDelete(c *gin.Context, id string)
- func MoviesIndex(c *gin.Context)
- func MoviesShow(c *gin.Context, id string)
- func MoviesUpdate(c *gin.Context, id string)
- func ReleasesCreate(c *gin.Context)
- func ReleasesDelete(c *gin.Context, id string)
- func ReleasesIndex(c *gin.Context)
- func ReleasesShow(c *gin.Context, id string)
- func ReleasesUpdate(c *gin.Context, id string)
- func SeriesCreate(c *gin.Context)
- func SeriesDelete(c *gin.Context, id string)
- func SeriesIndex(c *gin.Context)
- func SeriesSeasonEpisodes(c *gin.Context, id string, season string)
- func SeriesSeasons(c *gin.Context, id string)
- func SeriesShow(c *gin.Context, id string)
- func SeriesUpdate(c *gin.Context, id string)
- func UpcomingIndex(c *gin.Context)
- type Application
- type Cache
- type Config
- type Connection
- type Connector
- func (c *Connector) ActiveDownloads() ([]*Download, error)
- func (c *Connector) EpisodeSetting(id, setting string, value bool) error
- func (c *Connector) SeriesActive() ([]*Series, error)
- func (c *Connector) SeriesAll() ([]*Series, error)
- func (c *Connector) SeriesAllUnwatched(s *Series) (int, error)
- func (c *Connector) SeriesSeasonEpisodes(id string, season string) ([]*Episode, error)
- func (c *Connector) SeriesSeasons(id string) ([]string, error)
- func (c *Connector) SeriesSetting(id, setting string, value bool) error
- func (c *Connector) Upcoming() ([]*Episode, error)
- type Download
- type Episode
- type Medium
- type Release
- type Series
- type Server
- type Setting
- type Watch
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Background ¶
func DownloadsCreate ¶
func DownloadsDelete ¶
func DownloadsIndex ¶
func DownloadsShow ¶
func DownloadsUpdate ¶
func EpisodesUpdate ¶
func MoviesCreate ¶
func MoviesDelete ¶
func MoviesIndex ¶
func MoviesShow ¶
func MoviesUpdate ¶
func ReleasesCreate ¶
func ReleasesDelete ¶
func ReleasesIndex ¶
func ReleasesShow ¶
func ReleasesUpdate ¶
func SeriesCreate ¶
func SeriesDelete ¶
func SeriesIndex ¶
func SeriesSeasons ¶
func SeriesShow ¶
func SeriesUpdate ¶
func UpcomingIndex ¶
Types ¶
type Application ¶
type Application struct { Config *Config Router *gin.Engine DB *Connector Cache *Cache Log *logrus.Entry }
func App ¶
func App() *Application
type Config ¶
type Config struct { Mode string `yaml:"mode"` Port int `yaml:"port"` Connections map[string]*Connection `yaml:"connections"` Cron bool `yaml:"cron"` Redis struct { Address string `yaml:"address"` } `yaml:"redis"` Filesystems struct { Enabled bool `yaml:"enabled"` Directories []string `yaml:"directories"` } `yaml:"filesystems"` }
func ConfigInstance ¶
func ConfigInstance() *Config
type Connection ¶
type Connector ¶
type Connector struct { Download *grimoire.Store[*Download] Episode *grimoire.Store[*Episode] Medium *grimoire.Store[*Medium] Release *grimoire.Store[*Release] Series *grimoire.Store[*Series] Watch *grimoire.Store[*Watch] }
func NewConnector ¶
func (*Connector) ActiveDownloads ¶
func (*Connector) EpisodeSetting ¶
func (*Connector) SeriesActive ¶
func (*Connector) SeriesAllUnwatched ¶
func (*Connector) SeriesSeasonEpisodes ¶
func (*Connector) SeriesSetting ¶
type Download ¶
type Download struct { grimoire.Document `bson:",inline"` // includes default model settings //ID primitive.ObjectID `json:"_id" bson:"_id,omitempty"` //CreatedAt time.Time `json:"created_at" bson:"created_at"` //UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` MediumId primitive.ObjectID `json:"medium_id" bson:"medium_id"` Medium Medium `json:"medium" bson:"medium"` Auto bool `json:"auto" bson:"auto"` Multi bool `json:"multi" bson:"multi"` Force bool `json:"force" bson:"force"` Url string `json:"url" bson:"url"` ReleaseId string `json:"release_id" bson:"tdo_id"` Thash string `json:"thash" bson:"thash"` Timestamps struct { Found time.Time `json:"found" bson:"found"` Loaded time.Time `json:"loaded" bson:"loaded"` Downloaded time.Time `json:"downloaded" bson:"downloaded"` Completed time.Time `json:"completed" bson:"completed"` Deleted time.Time `json:"deleted" bson:"deleted"` } `json:"timestamps" bson:"timestamps"` Selected string `json:"selected" bson:"selected"` Status string `json:"status" bson:"status"` Files []struct { Id primitive.ObjectID `json:"id" bson:"_id"` MediumId primitive.ObjectID `json:"medium_id" bson:"medium_id"` Num int `json:"num" bson:"num"` } `json:"download_files" bson:"download_files"` }
func NewDownload ¶
func NewDownload() *Download
type Episode ¶
type Episode struct { grimoire.Document `bson:",inline"` // includes default model settings //ID primitive.ObjectID `json:"_id" bson:"_id,omitempty"` //CreatedAt time.Time `json:"created_at" bson:"created_at"` //UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` Type string `json:"type" bson:"_type"` SeriesId primitive.ObjectID `json:"series_id" bson:"series_id"` Kind primitive.Symbol `json:"kind" bson:"kind"` Source string `json:"source" bson:"source"` SourceId string `json:"source_id" bson:"source_id"` Title string `json:"title" bson:"title"` Description string `json:"description" bson:"description"` Slug string `json:"slug" bson:"slug"` Text []string `json:"text" bson:"text"` Display string `json:"display" bson:"display"` Directory string `json:"directory" bson:"directory"` Search string `json:"search" bson:"search"` SeasonNumber int `json:"season_number" bson:"season_number"` EpisodeNumber int `json:"episode_number" bson:"episode_number"` AbsoluteNumber int `json:"absolute_number" bson:"absolute_number"` SearchParams struct { Type string `json:"type" bson:"type"` Verified bool `json:"verified" bson:"verified"` Group string `json:"group" bson:"group"` Author string `json:"author" bson:"author"` Resolution int `json:"resolution" bson:"resolution"` Source string `json:"source" bson:"source"` Uncensored bool `json:"uncensored" bson:"uncensored"` Bluray bool `json:"bluray" bson:"bluray"` } `json:"search_params" bson:"search_params"` Active bool `json:"active" bson:"active"` Downloaded bool `json:"downloaded" bson:"downloaded"` Completed bool `json:"completed" bson:"completed"` Skipped bool `json:"skipped" bson:"skipped"` Watched bool `json:"watched" bson:"watched"` Broken bool `json:"broken" bson:"broken"` ReleaseDate time.Time `json:"release_date" bson:"release_date"` Paths []struct { Id primitive.ObjectID `json:"id" bson:"_id"` Type primitive.Symbol `json:"type" bson:"type"` Remote string `json:"remote" bson:"remote"` Local string `json:"local" bson:"local"` Extension string `json:"extension" bson:"extension"` Size int `json:"size" bson:"size"` UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` } `json:"paths" bson:"paths"` Cover string `json:"cover" bson:"cover"` Background string `json:"background" bson:"background"` }
func NewEpisode ¶
func NewEpisode() *Episode
type Medium ¶
type Medium struct { grimoire.Document `bson:",inline"` // includes default model settings //ID primitive.ObjectID `json:"_id" bson:"_id,omitempty"` //CreatedAt time.Time `json:"created_at" bson:"created_at"` //UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` Type string `json:"type" bson:"_type"` Kind primitive.Symbol `json:"kind" bson:"kind"` Source string `json:"source" bson:"source"` SourceId string `json:"source_id" bson:"source_id"` Title string `json:"title" bson:"title"` Description string `json:"description" bson:"description"` Slug string `json:"slug" bson:"slug"` Text []string `json:"text" bson:"text"` Display string `json:"display" bson:"display"` Directory string `json:"directory" bson:"directory"` Search string `json:"search" bson:"search"` SearchParams struct { Type string `json:"type" bson:"type"` Verified bool `json:"verified" bson:"verified"` Group string `json:"group" bson:"group"` Author string `json:"author" bson:"author"` Resolution int `json:"resolution" bson:"resolution"` Source string `json:"source" bson:"source"` Uncensored bool `json:"uncensored" bson:"uncensored"` Bluray bool `json:"bluray" bson:"bluray"` } `json:"search_params" bson:"search_params"` Active bool `json:"active" bson:"active"` Downloaded bool `json:"downloaded" bson:"downloaded"` Completed bool `json:"completed" bson:"completed"` Skipped bool `json:"skipped" bson:"skipped"` Watched bool `json:"watched" bson:"watched"` Broken bool `json:"broken" bson:"broken"` Favorite bool `json:"favorite" bson:"favorite"` ReleaseDate time.Time `json:"release_date" bson:"release_date"` Paths []struct { Id primitive.ObjectID `json:"id" bson:"_id"` Type primitive.Symbol `json:"type" bson:"type"` Remote string `json:"remote" bson:"remote"` Local string `json:"local" bson:"local"` Extension string `json:"extension" bson:"extension"` Size int `json:"size" bson:"size"` UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` } `json:"paths" bson:"paths"` Cover string `json:"cover" bson:"cover"` Background string `json:"background" bson:"background"` SeriesId primitive.ObjectID `json:"series_id" bson:"series_id"` SeasonNumber int `json:"season_number" bson:"season_number"` EpisodeNumber int `json:"episode_number" bson:"episode_number"` }
type Release ¶
type Release struct { grimoire.Document `bson:",inline"` // includes default model settings //ID primitive.ObjectID `json:"_id" bson:"_id,omitempty"` //CreatedAt time.Time `json:"created_at" bson:"created_at"` //UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` Type string `json:"type" bson:"type"` Source string `json:"source" bson:"source"` Raw string `json:"raw" bson:"raw"` Title string `json:"title" bson:"title"` Description string `json:"description" bson:"description"` Size string `json:"size" bson:"size"` View string `json:"view" bson:"view"` Download string `json:"download" bson:"download"` Infohash string `json:"infohash" bson:"infohash"` Name string `json:"name" bson:"name"` Season int `json:"season" bson:"season"` Episode int `json:"episode" bson:"episode"` Volume int `json:"volume" bson:"volume"` Checksum string `json:"checksum" bson:"checksum"` Group string `json:"group" bson:"group"` Author string `json:"author" bson:"author"` Verified bool `json:"verified" bson:"verified"` Widescreen bool `json:"widescreen" bson:"widescreen"` Uncensored bool `json:"uncensored" bson:"uncensored"` Bluray bool `json:"bluray" bson:"bluray"` Resolution string `json:"resolution" bson:"resolution"` Encoding string `json:"encoding" bson:"encoding"` Quality string `json:"quality" bson:"quality"` Published time.Time `json:"published" bson:"published_at"` }
func NewRelease ¶
func NewRelease() *Release
type Series ¶
type Series struct { grimoire.Document `bson:",inline"` // includes default model settings //ID primitive.ObjectID `json:"_id" bson:"_id,omitempty"` //CreatedAt time.Time `json:"created_at" bson:"created_at"` //UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` Type string `json:"type" bson:"_type"` Kind primitive.Symbol `json:"kind" bson:"kind"` Source string `json:"source" bson:"source"` SourceId string `json:"source_id" bson:"source_id"` Title string `json:"title" bson:"title"` Description string `json:"description" bson:"description"` Slug string `json:"slug" bson:"slug"` Text []string `json:"text" bson:"text"` Display string `json:"display" bson:"display"` Directory string `json:"directory" bson:"directory"` Search string `json:"search" bson:"search"` SearchParams struct { Type string `json:"type" bson:"type"` Verified bool `json:"verified" bson:"verified"` Group string `json:"group" bson:"group"` Author string `json:"author" bson:"author"` Resolution int `json:"resolution" bson:"resolution"` Source string `json:"source" bson:"source"` Uncensored bool `json:"uncensored" bson:"uncensored"` Bluray bool `json:"bluray" bson:"bluray"` } `json:"search_params" bson:"search_params"` Active bool `json:"active" bson:"active"` Downloaded bool `json:"downloaded" bson:"downloaded"` Completed bool `json:"completed" bson:"completed"` Skipped bool `json:"skipped" bson:"skipped"` Watched bool `json:"watched" bson:"watched"` Broken bool `json:"broken" bson:"broken"` Favorite bool `json:"favorite" bson:"favorite"` ReleaseDate time.Time `json:"release_date" bson:"release_date"` Paths []struct { Id primitive.ObjectID `json:"id" bson:"_id"` Type primitive.Symbol `json:"type" bson:"type"` Remote string `json:"remote" bson:"remote"` Local string `json:"local" bson:"local"` Extension string `json:"extension" bson:"extension"` Size int `json:"size" bson:"size"` UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` } `json:"paths" bson:"paths"` Cover string `json:"cover" bson:"cover"` Background string `json:"background" bson:"background"` }
type Server ¶
type Server struct { Router *gin.Engine Log *logrus.Entry // contains filtered or unexported fields }
func (*Server) DownloadsProcess ¶
func (s *Server) DownloadsProcess()
type Watch ¶
type Watch struct { grimoire.Document `bson:",inline"` // includes default model settings //ID primitive.ObjectID `json:"_id" bson:"_id,omitempty"` //CreatedAt time.Time `json:"created_at" bson:"created_at"` //UpdatedAt time.Time `json:"updated_at" bson:"updated_at"` Username string `json:"username" bson:"username"` Player string `json:"player" bson:"player"` WatchedAt time.Time `json:"watched_at" bson:"watched_at"` MediumId primitive.ObjectID `json:"medium_id" bson:"medium_id"` }
Source Files
¶
- app.go
- cache.go
- config.go
- cron.go
- models_connector.go
- models_download.go
- models_download_queries.go
- models_episode.go
- models_episode_queries.go
- models_medium.go
- models_medium_queries.go
- models_release.go
- models_series.go
- models_series_queries.go
- models_watch.go
- routes.go
- routes_downloads.go
- routes_episodes.go
- routes_movies.go
- routes_releases.go
- routes_series.go
- routes_upcoming.go
- server.go
- server_watcher.go
Click to show internal directories.
Click to hide internal directories.