From 51b56633801edec9cf748d2faab38626e253f567 Mon Sep 17 00:00:00 2001 From: Chopper <156493704+choppeh@users.noreply.github.com> Date: Wed, 4 Jun 2025 10:48:59 -0300 Subject: [PATCH] YugenMangas: Change latestUpdate (#9080) Change latestUpdate --- src/pt/yugenmangas/build.gradle | 2 +- .../extension/pt/yugenmangas/YugenMangas.kt | 26 ++++++++++++++----- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/pt/yugenmangas/build.gradle b/src/pt/yugenmangas/build.gradle index 59c71918e..2c0b07404 100644 --- a/src/pt/yugenmangas/build.gradle +++ b/src/pt/yugenmangas/build.gradle @@ -1,7 +1,7 @@ ext { extName = 'Yugen Mangás' extClass = '.YugenMangas' - extVersionCode = 45 + extVersionCode = 46 } apply from: "$rootDir/common.gradle" diff --git a/src/pt/yugenmangas/src/eu/kanade/tachiyomi/extension/pt/yugenmangas/YugenMangas.kt b/src/pt/yugenmangas/src/eu/kanade/tachiyomi/extension/pt/yugenmangas/YugenMangas.kt index 89c62c1a0..54c1c44d1 100644 --- a/src/pt/yugenmangas/src/eu/kanade/tachiyomi/extension/pt/yugenmangas/YugenMangas.kt +++ b/src/pt/yugenmangas/src/eu/kanade/tachiyomi/extension/pt/yugenmangas/YugenMangas.kt @@ -30,6 +30,7 @@ import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.RequestBody.Companion.toRequestBody import okhttp3.Response +import org.jsoup.nodes.Element import rx.Observable import uy.kohesive.injekt.injectLazy @@ -100,9 +101,19 @@ class YugenMangas : HttpSource(), ConfigurableSource { // ================================ Latest ======================================= override fun latestUpdatesRequest(page: Int): Request = - GET("$baseUrl/series?page=$page&order=desc&sort=date", headers) + GET("$baseUrl/chapters?page=$page", headers) - override fun latestUpdatesParse(response: Response) = popularMangaParse(response) + override fun latestUpdatesParse(response: Response): MangasPage { + val document = response.asJsoup() + val mangas = document.select("div.bg-card a[href*=series]").map { element -> + SManga.create().apply { + title = element.selectFirst("h3")!!.text() + thumbnail_url = element.selectFirst("img")?.attrImageSet() + setUrlWithoutDomain(element.absUrl("href").substringBeforeLast("/")) + } + } + return MangasPage(mangas, document.selectFirst("a[aria-label='Próxima página']:not([aria-disabled='true'])") != null) + } // ================================ Search ======================================= @@ -122,10 +133,7 @@ class YugenMangas : HttpSource(), ConfigurableSource { val document = response.asJsoup() title = document.selectFirst("h1")!!.text() description = document.selectFirst("[property='og:description']")?.attr("content") - thumbnail_url = document.selectFirst("img")?.attr("srcset") - ?.split(SRCSET_DELIMITER_REGEX) - ?.map(String::trim)?.last(String::isNotBlank) - ?.let { "$baseUrl$it" } + thumbnail_url = document.selectFirst("img")?.attrImageSet() author = document.selectFirst("p:contains(Autor) ~ div")?.text() artist = document.selectFirst("p:contains(Artista) ~ div")?.text() genre = document.select("p:contains(Gêneros) ~ div div.inline-flex").joinToString { it.text() } @@ -204,6 +212,12 @@ class YugenMangas : HttpSource(), ConfigurableSource { // ================================ Utils ======================================= + private fun Element?.attrImageSet(): String? { + return this?.attr("srcset")?.split(SRCSET_DELIMITER_REGEX) + ?.map(String::trim)?.last(String::isNotBlank) + ?.let { "$baseUrl$it" } + } + companion object { private const val BASE_URL_PREF = "overrideBaseUrl" private const val BASE_URL_PREF_TITLE = "Editar URL da fonte"