Include "current translation" only if translations list is empty

This commit is contained in:
2025-08-10 16:07:45 +05:00
parent c5b9b6cb57
commit a4fa454d73
2 changed files with 13 additions and 10 deletions

View File

@ -4,7 +4,6 @@ import java.io.IOException;
import org.springframework.stereotype.Service;
import com.backend.extractor.kodik.service.anyame_backend.api.model.KodikTranslation;
import com.backend.extractor.kodik.service.anyame_backend.api.model.KodikVideoLinks;
import com.backend.extractor.kodik.service.anyame_backend.exception.KodikAPINotFoundException;
import com.backend.extractor.kodik.service.anyame_backend.exception.KodikExtractionException;

View File

@ -37,6 +37,7 @@ public class KodikHtmlParserService {
private List<KodikTranslation> parseTranslations(Document doc) {
List<KodikTranslation> translations = new ArrayList<>();
String videoType = findVideoType(doc.html()).orElse("serial");
Elements translationOptions = doc.select(".serial-translations-box select option");
for (Element option : translationOptions) {
@ -54,16 +55,19 @@ public class KodikHtmlParserService {
Elements seasonOptions = doc.select(".serial-seasons-box select option");
Elements seriesOptions = doc.select(".serial-series-box select option");
for (Element option : seasonOptions) {
if (!option.hasAttr("selected")) {
continue;
if (translations.isEmpty()) {
for (Element option : seasonOptions) {
if (!option.hasAttr("selected")) {
continue;
}
String id = option.attr("value");
String title = option.attr("data-translation-title");
String mediaId = option.attr("data-serial-id");
String mediaHash = option.attr("data-serial-hash");
translations
.add(new KodikTranslation(id, title, mediaId, mediaHash, videoType, "", seriesOptions.size()));
}
String id = option.attr("value");
String title = option.attr("data-translation-title");
String mediaId = option.attr("data-serial-id");
String mediaHash = option.attr("data-serial-hash");
String mediaType = findVideoType(doc.html()).orElse("serial");
translations.add(new KodikTranslation(id, title, mediaId, mediaHash, mediaType, "", seriesOptions.size()));
}
return translations;