tvdb

package
v0.0.0-...-8462f15 Latest Latest
Warning

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

Go to latest
Published: Mar 2, 2014 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Actor

type Actor struct {
	XMLName   xml.Name `xml:"Actor"`
	Id        int      `xml:"id"`
	ImageUrl  string   `xml:"Image"`
	Name      string   `xml:"Name"`
	Role      string   `xml:"Role"`
	SortOrder int      `xml:"SortOrder"`
}

type ActorsResponse

type ActorsResponse struct {
	XMLName xml.Name `xml:"Actors"`
	Actors  []Actor
}
type Banner struct {
	XMLName       xml.Name `xml:"Banner"`
	Id            int      `xml:"id"`
	BannerPath    string   `xml:"BannerPath"`
	BannerType    string   `xml:"BannerType"`
	BannerType2   string   `xml:"BannerType2"`
	Colors        string   `xml:"Colors"`
	Language      string   `xml:"Language"`
	Rating        float64  `xml:"Rating"`
	RatingCount   int      `xml:"RatingCount"`
	SeriesName    string   `xml:"SeriesName"`
	ThumbnailPath string   `xml:"ThumbailPath"`
	VignettePath  string   `xml:"VignettePath"`
}

type BannersResponse

type BannersResponse struct {
	XMLName xml.Name `xml:"Banners"`
	Banners []Banner
}

<?xml version="1.0" encoding="UTF-8" ?> <Banners>

<Banner>
  <id>89141</id>
  <BannerPath>fanart/original/73739-34.jpg</BannerPath>
  <BannerType>fanart</BannerType>
  <BannerType2>1920x1080</BannerType2>
  <Colors>|148,149,153|13,23,22|165,159,137|</Colors>
  <Language>en</Language>
  <Rating>7.6563</Rating>
  <RatingCount>32</RatingCount>
  <SeriesName>false</SeriesName>
  <ThumbnailPath>_cache/fanart/original/73739-34.jpg</ThumbnailPath>
  <VignettePath>fanart/vignette/73739-34.jpg</VignettePath>
</Banner>

</Banners>

type Episode

type Episode struct {
	XMLName               xml.Name `xml:"Episode"`
	Id                    int
	CombinedEpisodeNumber int
	CombinedSeason        int
	Director              string
	EpisodeName           string
	EpisodeNumber         int
	FirstAired            string
	GuestStars            string // why is this not proper xml? jesus
	Language              string
	Overview              string
	SeasonNumber          int
	Writer                string
	Filename              string // wtf is this?
	LastUpdated           int64
	SeasonId              int
	SeriesId              int
}

type LangEpisode

type LangEpisode struct {
	Id int `xml:"id"`

	CombinedEpisodeNumber string `xml:"Combined_episodenumber"`
	CombinedSeason        string `xml:"Combined_season"`
	DvdChapter            string `xml:"DVD_chapter"`
	DvdDiscId             string `xml:"DVD_discid"`
	DvdEpisodeNumber      string `xml:"DVD_episodenumber"`
	DvdSeason             string `xml:"DVD_season"`
	Director              string `xml:"Director"`
	EpisodeImageFlag      string `xml:"EpImgFlag"`
	EpisodeName           string `xml:"EpisodeName"`
	EpisodeNumber         int    `xml:"EpisodeNumber"`
	FirstAired            string `xml:"FirstAired"`
	GuestStars            string `xml:"GuestStars"`
	ImdbId                string `xml:"IMDB_ID"`
	Language              string `xml:"Language"`
	Overview              string `xml:"Overview"`
	ProductionCode        string `xml:"ProductionCode"`
	Rating                string `xml:"Rating"`
	RatingCount           string `xml:"RatingCount"`
	SeasonNumber          int    `xml:"SeasonNumber"`
	Writer                string `xml:"Writer"`
	Absolute_number       string `xml:"absolute_number"`
	AirsAfterSeason       string `xml:"airsafter_season"`
	AirsBeforeEpisode     string `xml:"airsbefore_episode"`
	AirsBeforeSeason      string `xml:"airsbefore_season"`
	Filename              string `xml:"filename"`
	LastUpdated           string `xml:"lastupdated"`
	SeasonId              string `xml:"seasonid"`
	SeriesId              string `xml:"seriesid"`
}

type LangResponse

type LangResponse struct {
	XMLName  xml.Name       `xml:"Data"`
	Series   *LangSeries    `xml:"Series"`
	Episodes []*LangEpisode `xml:"Episode"`
	// contains filtered or unexported fields
}

<?xml version="1.0" encoding="UTF-8" ?> <Data>

<Series>
  <id>73739</id>
  <Actors>|Matthew Fox|Terry O'Quinn|Evangeline Lilly|Naveen Andrews|Daniel Dae Kim|Yunjin Kim|Josh Holloway|Jorge Garcia|Elizabeth Mitchell|Henry Ian Cusick|Michael Emerson|Dominic Monaghan|Emilie de Ravin|Harold Perrineau Jr.|Ian Somerhalder|Maggie Grace|Malcolm David Kelley|John Terry|Andrew Divoff|Sam Anderson|M.C. Gainey|Zuleikha Robinson|L. Scott Caldwell|Nestor Carbonell|Kevin Durand|Jeff Fahey|Tania Raymonde|Mira Furlan|Alan Dale|Sonya Walger|Rebecca Mader|Ken Leung|Jeremy Davies|Kiele Sanchez|Rodrigo Santoro|Cynthia Watros|Adewale Akinnuoye-Agbaje|Michelle Rodriguez|</Actors>
  <Airs_DayOfWeek>Tuesday</Airs_DayOfWeek>
  <Airs_Time>9:00 PM</Airs_Time>
  <ContentRating>TV-14</ContentRating>
  <FirstAired>2004-09-22</FirstAired>
  <Genre>|Action and Adventure|Drama|Science-Fiction|</Genre>
  <IMDB_ID>tt0411008</IMDB_ID>
  <Language>en</Language>
  <Network>ABC</Network>
  <NetworkID></NetworkID>
  <Overview>After their plane, Oceanic Air flight 815, tore apart whilst thousands of miles off course, the survivors find themselves on a mysterious deserted island where they soon find out they are not alone.</Overview>
  <Rating>9.1</Rating>
  <RatingCount>637</RatingCount>
  <Runtime>60</Runtime>
  <SeriesID>24313</SeriesID>
  <SeriesName>Lost</SeriesName>
  <Status>Ended</Status>
  <added></added>
  <addedBy></addedBy>
  <banner>graphical/73739-g4.jpg</banner>
  <fanart>fanart/original/73739-34.jpg</fanart>
  <lastupdated>1352667671</lastupdated>
  <poster>posters/73739-11.jpg</poster>
  <zap2it_id>SH672362</zap2it_id>
</Series>
<Episode>
  <id>127151</id>
  <Combined_episodenumber>1</Combined_episodenumber>
  <Combined_season>0</Combined_season>
  <DVD_chapter></DVD_chapter>
  <DVD_discid></DVD_discid>
  <DVD_episodenumber></DVD_episodenumber>
  <DVD_season></DVD_season>
  <Director></Director>
  <EpImgFlag>1</EpImgFlag>
  <EpisodeName>The Journey</EpisodeName>
  <EpisodeNumber>1</EpisodeNumber>
  <FirstAired>2005-04-27</FirstAired>
  <GuestStars>|Brian Cox|</GuestStars>
  <IMDB_ID></IMDB_ID>
  <Language>en</Language>
  <Overview>Flashbacks of the core characters illustrating who they were and what they were doing before the crash, a look at the island itself, and a preview of the big season finale.</Overview>
  <ProductionCode>120</ProductionCode>
  <Rating>7.5</Rating>
  <RatingCount>4</RatingCount>
  <SeasonNumber>0</SeasonNumber>
  <Writer></Writer>
  <absolute_number></absolute_number>
  <airsafter_season></airsafter_season>
  <airsbefore_episode>21</airsbefore_episode>
  <airsbefore_season>1</airsbefore_season>
  <filename>episodes/73739/127151.jpg</filename>
  <lastupdated>1323264341</lastupdated>
  <seasonid>21201</seasonid>
  <seriesid>73739</seriesid>
</Episode>
[...]

</Data>

func (*LangResponse) E

func (lr *LangResponse) E(seasonNumber, episodeNumber int) *LangEpisode

type LangSeries

type LangSeries struct {
	Id            int    `xml:"id"`
	Actors        string `xml:"Actors"`
	AirDayOfWeek  string `xml:"Airs_DayOfWeek`
	AirTime       string `xml:"Airs_Time`
	ContentRating string `xml:"ContentRating`
	FirstAired    string `xml:"FirstAired`
	Genre         string `xml:"Genre`
	ImdbId        string `xml:"IMDB_ID`
	Language      string `xml:"Language"`
	Network       string `xml:"Network`
	NetworkId     string `xml:"NetworkID`
	Overview      string `xml:"Overview`
	Rating        string `xml:"Rating`
	RatingCount   string `xml:"RatingCount`
	Runtime       string `xml:"Runtime`
	SeriesId      string `xml:"SeriesID`
	SeriesName    string `xml:"SeriesName`
	Status        string `xml:"Status`
	Added         string `xml:"added`
	AddedBy       string `xml:"addedBy`
	Banner        string `xml:"banner`
	FanArt        string `xml:"fanart`
	LastUpdated   string `xml:"lastupdated`
	Poster        string `xml:"poster"`
	Zap2ItId      string "zap2it_id"
}

type Series

type Series struct {
	XMLName    xml.Name `xml:"Series"`
	Language   string   `xml:"language"`
	SeriesName string   `xml:"SeriesName"`
	BannerUrl  string   `xml:"banner"`
	Overview   string   `xml:"Overview"`
	FirstAired string   `xml:"FirstAired"`
	ImdbId     string   `xml:"IMDB_ID"`
	Id         int      `xml:"id"`
}

type SeriesListResponse

type SeriesListResponse struct {
	XMLName xml.Name `xml:"Data"`
	Series  []*Series
}

type TvdbApi

type TvdbApi struct {
	ApiKey   string
	Client   *http.Client
	Language string
}

func NewTvdbApi

func NewTvdbApi(apiKey string, client *http.Client) (*TvdbApi, error)

func (*TvdbApi) GetSeriesData

func (t *TvdbApi) GetSeriesData(seriesId int) (ser *LangResponse, e error)

TODO: make this thread safe

func (*TvdbApi) SearchSeriesByName

func (t *TvdbApi) SearchSeriesByName(seriesName string) ([]*Series, error)

func (*TvdbApi) Show

func (t *TvdbApi) Show(seriesId int)

Jump to

Keyboard shortcuts

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