fix(pt/goanimes): Fix episode list (#1884)
This commit is contained in:
@ -26,7 +26,7 @@ class GoAnimes : DooPlay(
|
|||||||
override fun getSeasonEpisodes(season: Element): List<SEpisode> {
|
override fun getSeasonEpisodes(season: Element): List<SEpisode> {
|
||||||
// All episodes are listed under a single page
|
// All episodes are listed under a single page
|
||||||
season.selectFirst(episodeListSelector())?.let {
|
season.selectFirst(episodeListSelector())?.let {
|
||||||
return super.getSeasonEpisodes(season)
|
return getSeasonEpisodesRecursive(season)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Episodes are listed at another page
|
// Episodes are listed at another page
|
||||||
@ -34,7 +34,26 @@ class GoAnimes : DooPlay(
|
|||||||
return client.newCall(GET(url))
|
return client.newCall(GET(url))
|
||||||
.execute()
|
.execute()
|
||||||
.asJsoup()
|
.asJsoup()
|
||||||
.let { super.getSeasonEpisodes(it) }
|
.let(::getSeasonEpisodes)
|
||||||
|
}
|
||||||
|
|
||||||
|
private val episodeListNextPageSelector = "div.pagination span.current + a:not(.arrow_pag)"
|
||||||
|
|
||||||
|
private fun getSeasonEpisodesRecursive(season: Element): List<SEpisode> {
|
||||||
|
var doc = season.root()
|
||||||
|
return buildList {
|
||||||
|
do {
|
||||||
|
if (isNotEmpty()) {
|
||||||
|
doc.selectFirst(episodeListNextPageSelector)?.let {
|
||||||
|
val url = it.attr("abs:href")
|
||||||
|
doc = client.newCall(GET(url, headers)).execute()
|
||||||
|
.use { it.asJsoup() }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
addAll(super.getSeasonEpisodes(doc))
|
||||||
|
} while (doc.selectFirst(episodeListNextPageSelector) != null)
|
||||||
|
reversed()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// ============================ Video Links =============================
|
// ============================ Video Links =============================
|
||||||
|
@ -20,7 +20,7 @@ class DooPlayGenerator : ThemeSourceGenerator {
|
|||||||
SingleLang("Cinemathek", "https://cinemathek.net", "de", isNsfw = true, overrideVersionCode = 12),
|
SingleLang("Cinemathek", "https://cinemathek.net", "de", isNsfw = true, overrideVersionCode = 12),
|
||||||
SingleLang("CineVision", "https://cinevisionv3.online", "pt-BR", isNsfw = true, overrideVersionCode = 5),
|
SingleLang("CineVision", "https://cinevisionv3.online", "pt-BR", isNsfw = true, overrideVersionCode = 5),
|
||||||
SingleLang("DonghuaX", "https://donghuax.com", "pt-BR", isNsfw = false),
|
SingleLang("DonghuaX", "https://donghuax.com", "pt-BR", isNsfw = false),
|
||||||
SingleLang("GoAnimes", "https://goanimes.net", "pt-BR", isNsfw = true, overrideVersionCode = 1),
|
SingleLang("GoAnimes", "https://goanimes.net", "pt-BR", isNsfw = true, overrideVersionCode = 2),
|
||||||
SingleLang("Kinoking", "https://kinoking.cc", "de", isNsfw = false, overrideVersionCode = 15),
|
SingleLang("Kinoking", "https://kinoking.cc", "de", isNsfw = false, overrideVersionCode = 15),
|
||||||
SingleLang("Multimovies", "https://multimovies.shop", "en", isNsfw = false, overrideVersionCode = 7),
|
SingleLang("Multimovies", "https://multimovies.shop", "en", isNsfw = false, overrideVersionCode = 7),
|
||||||
SingleLang("pactedanime", "https://pactedanime.com", "en", isNsfw = false, className = "PactedAnime", overrideVersionCode = 4),
|
SingleLang("pactedanime", "https://pactedanime.com", "en", isNsfw = false, className = "PactedAnime", overrideVersionCode = 4),
|
||||||
|
Reference in New Issue
Block a user