diff --git a/multisrc/overrides/madara/babelwuxia/src/BabelWuxia.kt b/multisrc/overrides/madara/babelwuxia/src/BabelWuxia.kt index 94c385984..832949a70 100644 --- a/multisrc/overrides/madara/babelwuxia/src/BabelWuxia.kt +++ b/multisrc/overrides/madara/babelwuxia/src/BabelWuxia.kt @@ -1,56 +1,37 @@ package eu.kanade.tachiyomi.extension.en.babelwuxia import eu.kanade.tachiyomi.multisrc.madara.Madara -import eu.kanade.tachiyomi.network.POST -import okhttp3.FormBody -import okhttp3.Request +import eu.kanade.tachiyomi.source.model.MangasPage +import okhttp3.Response -class BabelWuxia : Madara("Babel Wuxia", "https://read.babelwuxia.com", "en") { +class BabelWuxia : Madara("Babel Wuxia", "https://babelwuxia.com", "en") { // moved from MangaThemesia override val versionId = 2 - override val useNewChapterEndpoint = true - override fun popularMangaNextPageSelector() = "body:not(:has(.no-posts))" - - private fun madaraLoadMoreRequest(page: Int, metaKey: String): Request { - val formBody = FormBody.Builder().apply { - add("action", "madara_load_more") - add("page", page.toString()) - add("template", "madara-core/content/content-archive") - add("vars[paged]", "1") - add("vars[orderby]", "meta_value_num") - add("vars[template]", "archive") - add("vars[sidebar]", "right") - add("vars[post_type]", "wp-manga") - add("vars[post_status]", "publish") - add("vars[meta_key]", metaKey) - add("vars[meta_query][0][paged]", "1") - add("vars[meta_query][0][orderby]", "meta_value_num") - add("vars[meta_query][0][template]", "archive") - add("vars[meta_query][0][sidebar]", "right") - add("vars[meta_query][0][post_type]", "wp-manga") - add("vars[meta_query][0][post_status]", "publish") - add("vars[meta_query][0][meta_key]", metaKey) - add("vars[meta_query][relation]", "AND") - add("vars[manga_archives_item_layout]", "default") - }.build() - - val xhrHeaders = headersBuilder() - .add("Content-Length", formBody.contentLength().toString()) - .add("Content-Type", formBody.contentType().toString()) - .add("X-Requested-With", "XMLHttpRequest") - .build() - - return POST("$baseUrl/wp-admin/admin-ajax.php", xhrHeaders, formBody) + override fun searchPage(page: Int): String { + return if (page > 1) { + "page/$page/" + } else { + "" + } } - override fun popularMangaRequest(page: Int): Request { - return madaraLoadMoreRequest(page - 1, "_wp_manga_views") - } + override fun popularMangaParse(response: Response) = + super.popularMangaParse(response).fixNextPage() - override fun latestUpdatesRequest(page: Int): Request { - return madaraLoadMoreRequest(page - 1, "_latest_update") + override fun latestUpdatesParse(response: Response) = + super.latestUpdatesParse(response).fixNextPage() + + override fun searchMangaParse(response: Response) = + super.searchMangaParse(response).fixNextPage() + + private fun MangasPage.fixNextPage(): MangasPage { + return if (mangas.size < 12) { + MangasPage(mangas, false) + } else { + this + } } } diff --git a/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt b/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt index cad2b6676..59e87df25 100644 --- a/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt +++ b/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt @@ -48,7 +48,7 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("Asura Scans.us (unoriginal)", "https://asurascans.us", "en", isNsfw = false, className = "AsuraScansUs"), SingleLang("AZManhwa", "https://azmanhwa.net", "en"), SingleLang("Azora", "https://azoranov.com", "ar", overrideVersionCode = 6), - SingleLang("Babel Wuxia", "https://read.babelwuxia.com", "en"), + SingleLang("Babel Wuxia", "https://babelwuxia.com", "en", overrideVersionCode = 1), SingleLang("Bakaman", "https://bakaman.net", "th", overrideVersionCode = 1), SingleLang("Banana CĂtrica", "https://bananacitrica.com", "pt-BR", isNsfw = true, pkgName = "bananamecanica", className = "BananaCitrica", overrideVersionCode = 4), SingleLang("Banana Manga", "https://bananamanga.net", "en", isNsfw = true),