Use videoType when defining translations
This commit is contained in:
@ -40,8 +40,10 @@ public class KodikHtmlParserService {
|
|||||||
|
|
||||||
private List<KodikTranslation> parseTranslations(Document doc) {
|
private List<KodikTranslation> parseTranslations(Document doc) {
|
||||||
List<KodikTranslation> translations = new ArrayList<>();
|
List<KodikTranslation> translations = new ArrayList<>();
|
||||||
String videoType = findVideoType(doc.html()).orElse("serial");
|
String possibleMediaType = findVideoType(doc.html()).orElse("serial");
|
||||||
Elements translationOptions = doc.select(".serial-translations-box select option");
|
boolean isMovie = possibleMediaType.equals("video");
|
||||||
|
String videoType = isMovie ? "movie" : possibleMediaType;
|
||||||
|
Elements translationOptions = doc.select(String.format(".%s-translations-box select option", videoType));
|
||||||
|
|
||||||
for (Element option : translationOptions) {
|
for (Element option : translationOptions) {
|
||||||
String id = option.attr("value");
|
String id = option.attr("value");
|
||||||
@ -50,14 +52,14 @@ public class KodikHtmlParserService {
|
|||||||
String mediaHash = option.attr("data-media-hash");
|
String mediaHash = option.attr("data-media-hash");
|
||||||
String mediaType = option.attr("data-media-type");
|
String mediaType = option.attr("data-media-type");
|
||||||
String translationType = option.attr("data-translation-type");
|
String translationType = option.attr("data-translation-type");
|
||||||
int episodeCount = parseIntSafely(option.attr("data-episode-count"));
|
int episodeCount = isMovie ? 1 : parseIntSafely(option.attr("data-episode-count"));
|
||||||
|
|
||||||
translations.add(new KodikTranslation(id, title, mediaId, mediaHash,
|
translations.add(new KodikTranslation(id, title, mediaId, mediaHash,
|
||||||
mediaType, translationType, episodeCount));
|
mediaType, translationType, episodeCount));
|
||||||
}
|
}
|
||||||
|
|
||||||
Elements seasonOptions = doc.select(".serial-seasons-box select option");
|
Elements seasonOptions = doc.select(String.format(".%s-seasons-box select option", videoType));
|
||||||
Elements seriesOptions = doc.select(".serial-series-box select option");
|
Elements seriesOptions = doc.select(String.format(".%s-series-box select option", videoType));
|
||||||
if (translations.isEmpty()) {
|
if (translations.isEmpty()) {
|
||||||
for (Element option : seasonOptions) {
|
for (Element option : seasonOptions) {
|
||||||
if (!option.hasAttr("selected")) {
|
if (!option.hasAttr("selected")) {
|
||||||
@ -69,7 +71,8 @@ public class KodikHtmlParserService {
|
|||||||
String mediaHash = option.attr("data-serial-hash");
|
String mediaHash = option.attr("data-serial-hash");
|
||||||
|
|
||||||
translations
|
translations
|
||||||
.add(new KodikTranslation(id, title, mediaId, mediaHash, videoType, "", seriesOptions.size()));
|
.add(new KodikTranslation(id, title, mediaId, mediaHash, possibleMediaType, "",
|
||||||
|
seriesOptions.size()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user