From 9d20a590ae219793e94ee337dd745d8d97b13929 Mon Sep 17 00:00:00 2001 From: KirinRaikage Date: Mon, 21 Jul 2025 17:36:46 +0200 Subject: [PATCH] Mangas-Origines: Fix chapters not found (#9741) * Mangas-Origines: Fix chapters not found * Add missing trailing comma --- src/fr/mangasoriginesfr/build.gradle | 2 +- .../fr/mangasoriginesfr/MangasOriginesFr.kt | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/fr/mangasoriginesfr/build.gradle b/src/fr/mangasoriginesfr/build.gradle index 40e821675..a592ce7bf 100644 --- a/src/fr/mangasoriginesfr/build.gradle +++ b/src/fr/mangasoriginesfr/build.gradle @@ -3,7 +3,7 @@ ext { extClass = '.MangasOriginesFr' themePkg = 'madara' baseUrl = 'https://mangas-origines.fr' - overrideVersionCode = 1 + overrideVersionCode = 2 isNsfw = false } diff --git a/src/fr/mangasoriginesfr/src/eu/kanade/tachiyomi/extension/fr/mangasoriginesfr/MangasOriginesFr.kt b/src/fr/mangasoriginesfr/src/eu/kanade/tachiyomi/extension/fr/mangasoriginesfr/MangasOriginesFr.kt index 6f4796bb3..ef4f1b753 100644 --- a/src/fr/mangasoriginesfr/src/eu/kanade/tachiyomi/extension/fr/mangasoriginesfr/MangasOriginesFr.kt +++ b/src/fr/mangasoriginesfr/src/eu/kanade/tachiyomi/extension/fr/mangasoriginesfr/MangasOriginesFr.kt @@ -1,6 +1,10 @@ package eu.kanade.tachiyomi.extension.fr.mangasoriginesfr import eu.kanade.tachiyomi.multisrc.madara.Madara +import eu.kanade.tachiyomi.network.POST +import eu.kanade.tachiyomi.source.model.SChapter +import eu.kanade.tachiyomi.util.asJsoup +import okhttp3.Response import java.text.SimpleDateFormat import java.util.Locale @@ -12,6 +16,30 @@ class MangasOriginesFr : Madara( ) { override val mangaSubString = "catalogues" + override val useNewChapterEndpoint = true + + override fun chapterListParse(response: Response): List { + val document = response.asJsoup() + + launchIO { countViews(document) } + + val chaptersWrapper = document.select("div[id^=manga-chapters-holder]") + + var chapterElements = document.select(chapterListSelector()) + + if (chapterElements.isEmpty() && !chaptersWrapper.isNullOrEmpty()) { + val mangaUrl = document.location().removeSuffix("/") + + val xhrRequest = POST("$mangaUrl/ajax/chapters/", xhrHeaders) + val xhrResponse = client.newCall(xhrRequest).execute() + + chapterElements = xhrResponse.asJsoup().select(chapterListSelector()) + xhrResponse.close() + } + + return chapterElements.map(::chapterFromElement) + } + // Manga Details Selectors override val mangaDetailsSelectorAuthor = "div.manga-authors > a" override val mangaDetailsSelectorDescription = "div.summary__content > p"