tvdb - languages.go
1 package tvdb
2
3 import "fmt"
4
5 // Language contains information about a supported language
6 type Language struct {
7 ID uint64 `json:"id"`
8 Abbreviation string `json:"abbreviation"`
9 Name string `json:"name"`
10 EnglishName string `json:"englishName"`
11 }
12
13 var languageURL = makeURL("/languages", "")
14
15 // Languages returns a slice of all the languages supported by TVDB
16 func (c *Conn) Languages() ([]Language, error) {
17 var r struct {
18 Data []Language `json:"data"`
19 Error requestErrors `json:"error"`
20 }
21 if err := c.get(languageURL, &r); err != nil {
22 return nil, err
23 }
24 return r.Data, nil
25 }
26
27 // Language retrieves information about a specific language, denoted by its
28 // language id
29 func (c *Conn) Language(id uint64) (*Language, error) {
30 var r struct {
31 Data *Language `json:"data"`
32 Error requestErrors `json:"error"`
33 }
34 if err := c.get(makeURL(fmt.Sprintf("/languages/%d", id), ""), &r); err != nil {
35 return nil, err
36 }
37 return r.Data, nil
38 }