fix(ar/WitAnime): Fix episode list when coming from latest updates page (#1699)

This commit is contained in:
Claudemirovsky
2023-06-10 08:15:42 +00:00
committed by GitHub
parent 46f595fc33
commit f89b148d7a
2 changed files with 12 additions and 5 deletions

View File

@ -7,7 +7,7 @@ ext {
extName = 'WIT ANIME' extName = 'WIT ANIME'
pkgNameSuffix = 'ar.witanime' pkgNameSuffix = 'ar.witanime'
extClass = '.WitAnime' extClass = '.WitAnime'
extVersionCode = 38 extVersionCode = 39
libVersion = '13' libVersion = '13'
} }

View File

@ -65,7 +65,10 @@ class WitAnime : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
} }
// ============================== Episodes ============================== // ============================== Episodes ==============================
override fun episodeListParse(response: Response) = super.episodeListParse(response).reversed() override fun episodeListParse(response: Response): List<SEpisode> {
val doc = getRealDoc(response.asJsoup())
return doc.select(episodeListSelector()).map(::episodeFromElement).reversed()
}
override fun episodeListSelector() = "div.ehover6 > div.episodes-card-title > h3 a" override fun episodeListSelector() = "div.ehover6 > div.episodes-card-title > h3 a"
@ -145,9 +148,7 @@ class WitAnime : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
// ================================== details ================================== // ================================== details ==================================
override fun animeDetailsParse(document: Document) = SAnime.create().apply { override fun animeDetailsParse(document: Document) = SAnime.create().apply {
val doc = document.selectFirst("div.anime-page-link a")?.let { val doc = getRealDoc(document)
client.newCall(GET(it.attr("href"), headers)).execute().asJsoup()
} ?: document
thumbnail_url = doc.selectFirst("img.thumbnail")!!.attr("src") thumbnail_url = doc.selectFirst("img.thumbnail")!!.attr("src")
title = doc.selectFirst("h1.anime-details-title")!!.text() title = doc.selectFirst("h1.anime-details-title")!!.text()
@ -207,6 +208,12 @@ class WitAnime : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
map { async(Dispatchers.Default) { f(it) } }.awaitAll() map { async(Dispatchers.Default) { f(it) } }.awaitAll()
} }
private fun getRealDoc(document: Document): Document {
return document.selectFirst("div.anime-page-link a")?.let {
client.newCall(GET(it.attr("href"), headers)).execute().asJsoup()
} ?: document
}
companion object { companion object {
private const val PREF_QUALITY_KEY = "preferred_quality" private const val PREF_QUALITY_KEY = "preferred_quality"
private const val PREF_QUALITY_TITLE = "Preferred quality" private const val PREF_QUALITY_TITLE = "Preferred quality"