Added arn to the main repository
This commit is contained in:
84
arn/Mapping.go
Normal file
84
arn/Mapping.go
Normal file
@ -0,0 +1,84 @@
|
||||
package arn
|
||||
|
||||
// Register a list of supported services.
|
||||
func init() {
|
||||
DataLists["mapping-services"] = []*Option{
|
||||
{"anidb/anime", "anidb/anime"},
|
||||
{"anilist/anime", "anilist/anime"},
|
||||
{"anilist/character", "anilist/character"},
|
||||
{"anilist/studio", "anilist/studio"},
|
||||
{"ann/company", "ann/company"},
|
||||
{"imdb/anime", "imdb/anime"},
|
||||
{"kitsu/anime", "kitsu/anime"},
|
||||
{"kitsu/character", "kitsu/character"},
|
||||
{"myanimelist/anime", "myanimelist/anime"},
|
||||
{"myanimelist/character", "myanimelist/character"},
|
||||
{"myanimelist/producer", "myanimelist/producer"},
|
||||
{"shoboi/anime", "shoboi/anime"},
|
||||
{"thetvdb/anime", "thetvdb/anime"},
|
||||
{"trakt/anime", "trakt/anime"},
|
||||
{"trakt/season", "trakt/season"},
|
||||
}
|
||||
}
|
||||
|
||||
// Mapping ...
|
||||
type Mapping struct {
|
||||
Service string `json:"service" editable:"true" datalist:"mapping-services"`
|
||||
ServiceID string `json:"serviceId" editable:"true"`
|
||||
}
|
||||
|
||||
// Name ...
|
||||
func (mapping *Mapping) Name() string {
|
||||
switch mapping.Service {
|
||||
case "anidb/anime":
|
||||
return "AniDB"
|
||||
case "anilist/anime":
|
||||
return "AniList"
|
||||
case "imdb/anime":
|
||||
return "IMDb"
|
||||
case "kitsu/anime":
|
||||
return "Kitsu"
|
||||
case "myanimelist/anime":
|
||||
return "MAL"
|
||||
case "shoboi/anime":
|
||||
return "Shoboi"
|
||||
case "thetvdb/anime":
|
||||
return "TVDB"
|
||||
case "trakt/anime":
|
||||
return "Trakt"
|
||||
case "trakt/season":
|
||||
return "Trakt"
|
||||
default:
|
||||
return mapping.Service
|
||||
}
|
||||
}
|
||||
|
||||
// Link ...
|
||||
func (mapping *Mapping) Link() string {
|
||||
switch mapping.Service {
|
||||
case "kitsu/anime":
|
||||
return "https://kitsu.io/anime/" + mapping.ServiceID
|
||||
case "shoboi/anime":
|
||||
return "http://cal.syoboi.jp/tid/" + mapping.ServiceID
|
||||
case "anilist/anime":
|
||||
return "https://anilist.co/anime/" + mapping.ServiceID
|
||||
case "anilist/character":
|
||||
return "https://anilist.co/character/" + mapping.ServiceID
|
||||
case "anilist/studio":
|
||||
return "https://anilist.co/studio/" + mapping.ServiceID
|
||||
case "imdb/anime":
|
||||
return "https://www.imdb.com/title/" + mapping.ServiceID
|
||||
case "myanimelist/anime":
|
||||
return "https://myanimelist.net/anime/" + mapping.ServiceID
|
||||
case "thetvdb/anime":
|
||||
return "https://thetvdb.com/?tab=series&id=" + mapping.ServiceID
|
||||
case "anidb/anime":
|
||||
return "https://anidb.net/perl-bin/animedb.pl?show=anime&aid=" + mapping.ServiceID
|
||||
case "trakt/anime":
|
||||
return "https://trakt.tv/shows/" + mapping.ServiceID
|
||||
case "trakt/season":
|
||||
return "https://trakt.tv/seasons/" + mapping.ServiceID
|
||||
default:
|
||||
return ""
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user