MGKomik: fix cf in popular and search (#10017)

* MGKomik: fix cf in popular and search

* cleaning

Co-Authored-By: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

* Update MGKomik.kt

* Update src/id/mgkomik/src/eu/kanade/tachiyomi/extension/id/mgkomik/MGKomik.kt

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

* cleaning

---------

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
This commit is contained in:
Luqman 2025-08-06 21:51:28 +07:00 committed by Draff
parent b1ddba5462
commit 5efcdd071e
Signed by: Draff
GPG Key ID: E8A89F3211677653
2 changed files with 16 additions and 30 deletions

View File

@ -3,7 +3,7 @@ ext {
extClass = '.MGKomik' extClass = '.MGKomik'
themePkg = 'madara' themePkg = 'madara'
baseUrl = 'https://id.mgkomik.cc' baseUrl = 'https://id.mgkomik.cc'
overrideVersionCode = 16 overrideVersionCode = 17
isNsfw = false isNsfw = false
} }

View File

@ -5,8 +5,9 @@ import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.interceptor.rateLimit import eu.kanade.tachiyomi.network.interceptor.rateLimit
import eu.kanade.tachiyomi.source.model.Filter import eu.kanade.tachiyomi.source.model.Filter
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
import okhttp3.Request import eu.kanade.tachiyomi.source.model.SManga
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.text.SimpleDateFormat import java.text.SimpleDateFormat
import java.util.Locale import java.util.Locale
@ -16,7 +17,7 @@ class MGKomik : Madara(
"id", "id",
SimpleDateFormat("dd MMM yy", Locale.US), SimpleDateFormat("dd MMM yy", Locale.US),
) { ) {
override val useLoadMoreRequest = LoadMoreStrategy.Never override val useLoadMoreRequest = LoadMoreStrategy.Always
override val useNewChapterEndpoint = false override val useNewChapterEndpoint = false
@ -44,38 +45,23 @@ class MGKomik : Madara(
// ================================== Popular ====================================== // ================================== Popular ======================================
override fun popularMangaNextPageSelector() = ".wp-pagenavi span.current + a" // overriding to change title selector and manga url selector
override fun popularMangaFromElement(element: Element): SManga {
val manga = SManga.create()
// ================================== Latest ======================================= with(element) {
selectFirst("div.item-thumb a")!!.let {
override fun latestUpdatesRequest(page: Int): Request = manga.setUrlWithoutDomain(it.attr("abs:href"))
if (useLoadMoreRequest()) { manga.title = it.attr("title")
loadMoreRequest(page, popular = false)
} else {
GET("$baseUrl/$mangaSubString/${searchPage(page)}", headers)
} }
// ================================== Search ======================================= selectFirst("img")?.let {
manga.thumbnail_url = imageFromElement(it)
override fun searchRequest(page: Int, query: String, filters: FilterList): Request {
filters.forEach { filter ->
when (filter) {
is GenreContentFilter -> {
val url = filter.toUriPart()
if (url.isBlank()) {
return@forEach
} }
return GET(filter.toUriPart(), headers)
}
else -> {}
}
}
return super.searchRequest(page, query, filters)
} }
override fun searchMangaSelector() = "${super.searchMangaSelector()}, .page-listing-item .page-item-detail" return manga
}
override fun searchMangaNextPageSelector() = "a.page.larger"
// ================================ Chapters ================================ // ================================ Chapters ================================