From 1f507b3c733bcdb8ee69bf88c1d4685983f7bae6 Mon Sep 17 00:00:00 2001 From: Arkai1 Date: Wed, 5 Mar 2025 10:58:58 +0530 Subject: [PATCH 1/4] Update AnimeOwl.kt --- .../animeextension/en/animeowl/AnimeOwl.kt | 41 +++++++++++-------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/src/en/animeowl/src/eu/kanade/tachiyomi/animeextension/en/animeowl/AnimeOwl.kt b/src/en/animeowl/src/eu/kanade/tachiyomi/animeextension/en/animeowl/AnimeOwl.kt index b53606e8..58fab7df 100644 --- a/src/en/animeowl/src/eu/kanade/tachiyomi/animeextension/en/animeowl/AnimeOwl.kt +++ b/src/en/animeowl/src/eu/kanade/tachiyomi/animeextension/en/animeowl/AnimeOwl.kt @@ -128,28 +128,35 @@ class AnimeOwl : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override fun episodeListParse(response: Response): List { val document = response.asJsoup() val sub = document.select("#anime-cover-sub-content .episode-node").mapIndexed { idx, it -> - EpisodeResponse.Episode( - id = it.text().toDouble(), - episodeIndex = idx.toString(), - name = it.text(), - lang = "Sub", - href = it.attr("abs:href"), - ) - } + val episodeText = it.text().trim() + val episodeNumber = episodeText.toDoubleOrNull() ?: (idx + 1).toDouble() + + EpisodeResponse.Episode( + id = episodeNumber, + episodeIndex = idx.toString(), + name = episodeText, + lang = "Sub", + href = it.attr("abs:href"), + ) +} + val dub = document.select("#anime-cover-dub-content .episode-node").mapIndexed { idx, it -> - EpisodeResponse.Episode( - id = it.text().toDouble(), - episodeIndex = idx.toString(), - name = it.text(), - lang = "Dub", - href = it.attr("abs:href"), - ) - } + val episodeText = it.text().trim() + val episodeNumber = episodeText.toDoubleOrNull() ?: (idx + 1).toDouble() + + EpisodeResponse.Episode( + id = episodeNumber, + episodeIndex = idx.toString(), + name = episodeText, + lang = "Dub", + href = it.attr("abs:href"), + ) +} return listOf(sub, dub).flatten().groupBy { it.name }.map { (epNum, epList) -> SEpisode.create().apply { url = LinkData(epList.map { ep -> Link(ep.href!!, ep.lang!!) }).toJsonString() - episode_number = epNum.toFloatOrNull() ?: 0F + episode_number = epNum.filter { it.isDigit() || it == '.' }.toFloatOrNull() ?: 0F name = "Episode $epNum" } }.sortedByDescending { it.episode_number } -- 2.47.2 From 19873c940186de38207709f726745be8ef976b0d Mon Sep 17 00:00:00 2001 From: Arkai1 Date: Wed, 5 Mar 2025 10:59:35 +0530 Subject: [PATCH 2/4] Update build.gradle --- src/en/animeowl/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/en/animeowl/build.gradle b/src/en/animeowl/build.gradle index e5849d46..40b4fa1d 100644 --- a/src/en/animeowl/build.gradle +++ b/src/en/animeowl/build.gradle @@ -1,7 +1,7 @@ ext { extName = 'AnimeOwl' extClass = '.AnimeOwl' - extVersionCode = 22 + extVersionCode = 23 } apply from: "$rootDir/common.gradle" -- 2.47.2 From 989358fe1ba86f152b6f6c5b3a0e7e67ebb209a9 Mon Sep 17 00:00:00 2001 From: Arkai1 Date: Wed, 5 Mar 2025 11:17:19 +0530 Subject: [PATCH 3/4] Update AnimeOwl.kt --- .../tachiyomi/animeextension/en/animeowl/AnimeOwl.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/en/animeowl/src/eu/kanade/tachiyomi/animeextension/en/animeowl/AnimeOwl.kt b/src/en/animeowl/src/eu/kanade/tachiyomi/animeextension/en/animeowl/AnimeOwl.kt index 58fab7df..bb094dcc 100644 --- a/src/en/animeowl/src/eu/kanade/tachiyomi/animeextension/en/animeowl/AnimeOwl.kt +++ b/src/en/animeowl/src/eu/kanade/tachiyomi/animeextension/en/animeowl/AnimeOwl.kt @@ -44,8 +44,11 @@ class AnimeOwl : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override val supportsLatest = true - private val json: Json by injectLazy() - + private val json: Json by lazy { + Json { + ignoreUnknownKeys = true + coerceInputValues = true + } private val preferences: SharedPreferences by lazy { Injekt.get().getSharedPreferences("source_$id", 0x0000) } -- 2.47.2 From b7b098b5afe3e1de156a52667d82789f721d663b Mon Sep 17 00:00:00 2001 From: Arkai1 Date: Wed, 5 Mar 2025 11:17:44 +0530 Subject: [PATCH 4/4] Update build.gradle -- 2.47.2