From 1fb56a2dee5faf6878ffd79d20263ae560072c15 Mon Sep 17 00:00:00 2001 From: bivashy Date: Sun, 14 Sep 2025 20:43:39 +0500 Subject: [PATCH] Use videoType when defining translations --- .../service/KodikHtmlParserService.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/KodikHtmlParserService.java b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/KodikHtmlParserService.java index e2bba39..de75d56 100644 --- a/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/KodikHtmlParserService.java +++ b/src/main/java/com/backend/extractor/kodik/service/anyame_backend/service/KodikHtmlParserService.java @@ -40,8 +40,10 @@ public class KodikHtmlParserService { private List parseTranslations(Document doc) { List translations = new ArrayList<>(); - String videoType = findVideoType(doc.html()).orElse("serial"); - Elements translationOptions = doc.select(".serial-translations-box select option"); + String possibleMediaType = findVideoType(doc.html()).orElse("serial"); + 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) { String id = option.attr("value"); @@ -50,14 +52,14 @@ public class KodikHtmlParserService { String mediaHash = option.attr("data-media-hash"); String mediaType = option.attr("data-media-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, mediaType, translationType, episodeCount)); } - Elements seasonOptions = doc.select(".serial-seasons-box select option"); - Elements seriesOptions = doc.select(".serial-series-box select option"); + Elements seasonOptions = doc.select(String.format(".%s-seasons-box select option", videoType)); + Elements seriesOptions = doc.select(String.format(".%s-series-box select option", videoType)); if (translations.isEmpty()) { for (Element option : seasonOptions) { if (!option.hasAttr("selected")) { @@ -69,7 +71,8 @@ public class KodikHtmlParserService { String mediaHash = option.attr("data-serial-hash"); translations - .add(new KodikTranslation(id, title, mediaId, mediaHash, videoType, "", seriesOptions.size())); + .add(new KodikTranslation(id, title, mediaId, mediaHash, possibleMediaType, "", + seriesOptions.size())); } } -- 2.49.0