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'
themePkg = 'madara'
baseUrl = 'https://id.mgkomik.cc'
overrideVersionCode = 16
overrideVersionCode = 17
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.source.model.Filter
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.Element
import java.text.SimpleDateFormat
import java.util.Locale
@ -16,7 +17,7 @@ class MGKomik : Madara(
"id",
SimpleDateFormat("dd MMM yy", Locale.US),
) {
override val useLoadMoreRequest = LoadMoreStrategy.Never
override val useLoadMoreRequest = LoadMoreStrategy.Always
override val useNewChapterEndpoint = false
@ -44,38 +45,23 @@ class MGKomik : Madara(
// ================================== 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 =======================================
override fun latestUpdatesRequest(page: Int): Request =
if (useLoadMoreRequest()) {
loadMoreRequest(page, popular = false)
} else {
GET("$baseUrl/$mangaSubString/${searchPage(page)}", headers)
with(element) {
selectFirst("div.item-thumb a")!!.let {
manga.setUrlWithoutDomain(it.attr("abs:href"))
manga.title = it.attr("title")
}
// ================================== Search =======================================
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
selectFirst("img")?.let {
manga.thumbnail_url = imageFromElement(it)
}
return GET(filter.toUriPart(), headers)
}
else -> {}
}
}
return super.searchRequest(page, query, filters)
}
override fun searchMangaSelector() = "${super.searchMangaSelector()}, .page-listing-item .page-item-detail"
override fun searchMangaNextPageSelector() = "a.page.larger"
return manga
}
// ================================ Chapters ================================