Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type HTTPClient ¶
var Client HTTPClient
type IndividualResult ¶
type IndividualResult struct { SearchResult Runtime int PhysicalDigitalRelease time.Time EndedAt time.Time Genres []string ImdbID string TvdbID *int }
func GetResultByID ¶
func GetResultByID(id string) (*IndividualResult, error)
func GetResultByImdbID ¶
func GetResultByImdbID(imdbID string) (*IndividualResult, error)
type SearchAPI ¶
type SearchAPI interface { SearchByTitle(string, string, int) (*SearchResults, error) SearchByID(string) (*IndividualResult, error) SearchByImdbID(string) (*IndividualResult, error) }
type SearchResult ¶
type SearchResults ¶
type SearchResults struct { Results []SearchResult PerPage int TotalResults int }
func SearchByTitle ¶
func SearchByTitle(title, contentType string, page int) (*SearchResults, error)
type TmdbAPI ¶
type TmdbAPI struct{}
func (*TmdbAPI) SearchByID ¶
func (t *TmdbAPI) SearchByID(id string) (*IndividualResult, error)
func (*TmdbAPI) SearchByImdbID ¶
func (t *TmdbAPI) SearchByImdbID(imdbID string) (*IndividualResult, error)
func (*TmdbAPI) SearchByTitle ¶
func (t *TmdbAPI) SearchByTitle(title, contentType string, page int) (*SearchResults, error)
type TmdbImdbResult ¶
type TmdbImdbResult struct { MovieResults []struct { GenreIds []int `json:"genre_ids"` OriginalLanguage string `json:"original_language"` OriginalTitle string `json:"original_title"` PosterPath string `json:"poster_path"` Video bool `json:"video"` ID int `json:"id"` VoteCount int `json:"vote_count"` Overview string `json:"overview"` ReleaseDate string `json:"release_date"` VoteAverage float64 `json:"vote_average"` Title string `json:"title"` Adult bool `json:"adult"` BackdropPath string `json:"backdrop_path"` Popularity float64 `json:"popularity"` } `json:"movie_results"` TvResults []struct { OriginalName string `json:"original_name"` GenreIds []int `json:"genre_ids"` OriginalLanguage string `json:"original_language"` ID int `json:"id"` PosterPath string `json:"poster_path"` VoteAverage float64 `json:"vote_average"` Overview string `json:"overview"` VoteCount int `json:"vote_count"` Name string `json:"name"` BackdropPath string `json:"backdrop_path"` OriginCountry []string `json:"origin_country"` FirstAirDate string `json:"first_air_date"` Popularity float64 `json:"popularity"` } `json:"tv_results"` }
type TmdbIndividualSearch ¶
type TmdbIndividualSearch struct { Adult bool `json:"adult,omitempty"` BackdropPath string `json:"backdrop_path"` BelongsToCollection struct { ID int `json:"id"` Name string `json:"name"` PosterPath string `json:"poster_path"` BackdropPath string `json:"backdrop_path"` } `json:"belongs_to_collection,omitempty"` Budget int `json:"budget,omitempty"` Genres []struct { ID int `json:"id"` Name string `json:"name"` } `json:"genres"` Homepage string `json:"homepage"` ID int `json:"id"` ImdbID string `json:"imdb_id,omitempty"` OriginalLanguage string `json:"original_language"` OriginalTitle string `json:"original_title,omitempty"` Overview string `json:"overview"` Popularity float64 `json:"popularity"` PosterPath string `json:"poster_path"` ProductionCompanies []struct { ID int `json:"id"` LogoPath string `json:"logo_path"` Name string `json:"name"` OriginCountry string `json:"origin_country"` } `json:"production_companies"` ProductionCountries []struct { Iso31661 string `json:"iso_3166_1"` Name string `json:"name"` } `json:"production_countries"` ReleaseDate string `json:"release_date,omitempty"` Revenue int `json:"revenue,omitempty"` Runtime int `json:"runtime,omitempty"` SpokenLanguages []struct { EnglishName string `json:"english_name"` Iso6391 string `json:"iso_639_1"` Name string `json:"name"` } `json:"spoken_languages"` Status string `json:"status"` Tagline string `json:"tagline"` Title string `json:"title,omitempty"` Video bool `json:"video,omitempty"` VoteAverage float64 `json:"vote_average"` VoteCount int `json:"vote_count"` CreatedBy []interface{} `json:"created_by,omitempty"` EpisodeRunTime []int `json:"episode_run_time,omitempty"` FirstAirDate string `json:"first_air_date,omitempty"` InProduction bool `json:"in_production,omitempty"` Languages []string `json:"languages,omitempty"` LastAirDate string `json:"last_air_date,omitempty"` LastEpisodeToAir struct { AirDate string `json:"air_date"` EpisodeNumber int `json:"episode_number"` ID int `json:"id"` Name string `json:"name"` Overview string `json:"overview"` ProductionCode string `json:"production_code"` SeasonNumber int `json:"season_number"` StillPath string `json:"still_path"` VoteAverage float64 `json:"vote_average"` VoteCount int `json:"vote_count"` } `json:"last_episode_to_air,omitempty"` Name string `json:"name,omitempty"` NextEpisodeToAir interface{} `json:"next_episode_to_air,omitempty"` Networks []struct { Name string `json:"name"` ID int `json:"id"` LogoPath string `json:"logo_path"` OriginCountry string `json:"origin_country"` } `json:"networks,omitempty"` NumberOfEpisodes int `json:"number_of_episodes,omitempty"` NumberOfSeasons int `json:"number_of_seasons,omitempty"` OriginCountry []string `json:"origin_country,omitempty"` OriginalName string `json:"original_name,omitempty"` Seasons []struct { AirDate string `json:"air_date"` EpisodeCount int `json:"episode_count"` ID int `json:"id"` Name string `json:"name"` Overview string `json:"overview"` PosterPath string `json:"poster_path"` SeasonNumber int `json:"season_number"` } `json:"seasons,omitempty"` Type string `json:"type,omitempty"` ReleaseDates struct { Results []struct { Iso31661 string `json:"iso_3166_1"` ReleaseDates []struct { Certification string `json:"certification"` Iso6391 string `json:"iso_639_1"` Note string `json:"note"` ReleaseDate time.Time `json:"release_date"` Type int `json:"type"` } `json:"release_dates"` } `json:"results"` } `json:"release_dates,omitempty"` ExternalIds struct { ImdbID string `json:"imdb_id"` FreebaseMid interface{} `json:"freebase_mid"` FreebaseID interface{} `json:"freebase_id"` TvdbID int `json:"tvdb_id"` TvrageID interface{} `json:"tvrage_id"` FacebookID string `json:"facebook_id"` InstagramID string `json:"instagram_id"` TwitterID string `json:"twitter_id"` } `json:"external_ids"` Success bool `json:"success"` StatusCode int `json:"status_code,omitempty"` StatusMessage string `json:"status_message,omitempty"` }
type TmdbTitleSearch ¶
type TmdbTitleSearch struct { Page int `json:"page"` Results []struct { Adult bool `json:"adult,omitempty"` BackdropPath string `json:"backdrop_path"` GenreIds []int `json:"genre_ids"` ID int `json:"id"` MediaType string `json:"media_type"` OriginalLanguage string `json:"original_language"` OriginalTitle string `json:"original_title,omitempty"` Overview string `json:"overview"` Popularity float64 `json:"popularity"` PosterPath string `json:"poster_path"` ReleaseDate string `json:"release_date,omitempty"` Title string `json:"title,omitempty"` Video bool `json:"video,omitempty"` VoteAverage float64 `json:"vote_average"` VoteCount int `json:"vote_count"` FirstAirDate string `json:"first_air_date,omitempty"` Name string `json:"name,omitempty"` OriginCountry []string `json:"origin_country,omitempty"` OriginalName string `json:"original_name,omitempty"` } `json:"results"` TotalPages int `json:"total_pages"` TotalResults int `json:"total_results"` }
Click to show internal directories.
Click to hide internal directories.