comparison src/gui/translate/anilist.cc @ 370:ea3a74ed2ef9

*: hm, last commit wasn't quite finished?
author Paper <paper@tflc.us>
date Fri, 25 Jul 2025 10:22:04 -0400
parents b5d6c27c308f
children
comparison
equal deleted inserted replaced
369:47c9f8502269 370:ea3a74ed2ef9
2 #include <unordered_map> 2 #include <unordered_map>
3 3
4 namespace Translate { 4 namespace Translate {
5 namespace AniList { 5 namespace AniList {
6 6
7 Anime::SeriesStatus ToSeriesStatus(const std::string& status) { 7 Anime::SeriesStatus ToSeriesStatus(const std::string &status)
8 {
8 static const std::unordered_map<std::string, Anime::SeriesStatus> map = { 9 static const std::unordered_map<std::string, Anime::SeriesStatus> map = {
9 {"FINISHED", Anime::SeriesStatus::Finished }, 10 {"FINISHED", Anime::SeriesStatus::Finished },
10 {"RELEASING", Anime::SeriesStatus::Releasing }, 11 {"RELEASING", Anime::SeriesStatus::Releasing },
11 {"NOT_YET_RELEASED", Anime::SeriesStatus::NotYetReleased}, 12 {"NOT_YET_RELEASED", Anime::SeriesStatus::NotYetReleased},
12 {"CANCELLED", Anime::SeriesStatus::Cancelled }, 13 {"CANCELLED", Anime::SeriesStatus::Cancelled },
13 {"HIATUS", Anime::SeriesStatus::Hiatus } 14 {"HIATUS", Anime::SeriesStatus::Hiatus }
14 }; 15 };
15 16
16 if (map.find(status) == map.end()) 17 if (map.find(status) == map.end())
17 return Anime::SeriesStatus::Unknown; 18 return Anime::SeriesStatus::Unknown;
18 return map.at(status); 19 return map.at(status);
19 } 20 }
20 21
21 Anime::Season::Name ToSeriesSeason(const std::string& season) { 22 Anime::Season::Name ToSeriesSeason(const std::string &season)
23 {
22 static const std::unordered_map<std::string, Anime::Season::Name> map = { 24 static const std::unordered_map<std::string, Anime::Season::Name> map = {
23 {"WINTER", Anime::Season::Name::Winter}, 25 {"WINTER", Anime::Season::Name::Winter},
24 {"SPRING", Anime::Season::Name::Spring}, 26 {"SPRING", Anime::Season::Name::Spring},
25 {"SUMMER", Anime::Season::Name::Summer}, 27 {"SUMMER", Anime::Season::Name::Summer},
26 {"FALL", Anime::Season::Name::Autumn} 28 {"FALL", Anime::Season::Name::Autumn}
29 if (map.find(season) == map.end()) 31 if (map.find(season) == map.end())
30 return Anime::Season::Name::Unknown; 32 return Anime::Season::Name::Unknown;
31 return map.at(season); 33 return map.at(season);
32 } 34 }
33 35
34 Anime::SeriesFormat ToSeriesFormat(const std::string& format) { 36 Anime::SeriesFormat ToSeriesFormat(const std::string &format)
37 {
35 static const std::unordered_map<std::string, enum Anime::SeriesFormat> map = { 38 static const std::unordered_map<std::string, enum Anime::SeriesFormat> map = {
36 {"TV", Anime::SeriesFormat::Tv }, 39 {"TV", Anime::SeriesFormat::Tv },
37 {"TV_SHORT", Anime::SeriesFormat::TvShort}, 40 {"TV_SHORT", Anime::SeriesFormat::TvShort},
38 {"MOVIE", Anime::SeriesFormat::Movie }, 41 {"MOVIE", Anime::SeriesFormat::Movie },
39 {"SPECIAL", Anime::SeriesFormat::Special }, 42 {"SPECIAL", Anime::SeriesFormat::Special},
40 {"OVA", Anime::SeriesFormat::Ova }, 43 {"OVA", Anime::SeriesFormat::Ova },
41 {"ONA", Anime::SeriesFormat::Ona }, 44 {"ONA", Anime::SeriesFormat::Ona },
42 {"MUSIC", Anime::SeriesFormat::Music } 45 {"MUSIC", Anime::SeriesFormat::Music }
43 }; 46 };
44 47
45 if (map.find(format) == map.end()) 48 if (map.find(format) == map.end())
46 return Anime::SeriesFormat::Unknown; 49 return Anime::SeriesFormat::Unknown;
47 return map.at(format); 50 return map.at(format);
48 } 51 }
49 52
50 std::string ToString(Anime::Season::Name season) { 53 std::string ToString(Anime::Season::Name season)
54 {
51 switch (season) { 55 switch (season) {
52 default: 56 default:
53 case Anime::Season::Name::Winter: return "WINTER"; 57 case Anime::Season::Name::Winter: return "WINTER";
54 case Anime::Season::Name::Autumn: return "FALL"; 58 case Anime::Season::Name::Autumn: return "FALL";
55 case Anime::Season::Name::Summer: return "SUMMER"; 59 case Anime::Season::Name::Summer: return "SUMMER";