[RU]GroupLe pagination shift fix (#12836)

* [RU]GroupLe pagination shift fix

* toHttpUrlOrNull

* fix empty query redirect

* +CategoryList

* return of the self-fired

* end

* typo
This commit is contained in:
Ejan 2022-08-05 18:20:59 +05:00 committed by GitHub
parent 8d48368eb3
commit eef80b40b9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 19 additions and 24 deletions

View File

@ -12,7 +12,7 @@ class AllHentai : GroupLe("AllHentai", "http://23.allhen.online", "ru") {
override val id: Long = 1809051393403180443
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = "$baseUrl/search/advanced?offset=${70 * (page - 1)}".toHttpUrlOrNull()!!.newBuilder()
val url = super.searchMangaRequest(page, query, filters).url.newBuilder()
(if (filters.isEmpty()) getFilterList() else filters).forEach { filter ->
when (filter) {
is GenreList -> filter.state.forEach { genre ->
@ -47,9 +47,6 @@ class AllHentai : GroupLe("AllHentai", "http://23.allhen.online", "ru") {
else -> return@forEach
}
}
if (query.isNotEmpty()) {
url.addQueryParameter("q", query)
}
return if (url.toString().contains("&"))
GET(url.toString().replace("=%3D", "="), headers)
else popularMangaRequest(page)

View File

@ -12,10 +12,7 @@ class MintManga : GroupLe("MintManga", "https://mintmanga.live", "ru") {
override val id: Long = 6
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = "$baseUrl/search/advanced?offset=${70 * (page - 1)}".toHttpUrlOrNull()!!.newBuilder()
if (query.isNotEmpty()) {
url.addQueryParameter("q", query)
}
val url = super.searchMangaRequest(page, query, filters).url.newBuilder()
(if (filters.isEmpty()) getFilterList().reversed() else filters.reversed()).forEach { filter ->
when (filter) {
is GenreList -> filter.state.forEach { genre ->
@ -113,9 +110,10 @@ class MintManga : GroupLe("MintManga", "https://mintmanga.live", "ru") {
Genre("Арт", "el_2220"),
Genre("Ёнкома", "el_2741"),
Genre("Комикс", "el_1903"),
Genre("Манга", "el_6421"),
Genre("Манхва", "el_1873"),
Genre("Маньхуа", "el_1875"),
Genre("Ранобэ", "el_5688"),
Genre("Ранобэ", "el_5688")
)
private fun getGenreList() = listOf(

View File

@ -12,10 +12,7 @@ class ReadManga : GroupLe("ReadManga", "https://readmanga.live", "ru") {
override val id: Long = 5
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = "$baseUrl/search/advanced?offset=${70 * (page - 1)}".toHttpUrlOrNull()!!.newBuilder()
if (query.isNotEmpty()) {
url.addQueryParameter("q", query)
}
val url = super.searchMangaRequest(page, query, filters).url.newBuilder()
(if (filters.isEmpty()) getFilterList().reversed() else filters.reversed()).forEach { filter ->
when (filter) {
is GenreList -> filter.state.forEach { genre ->
@ -113,9 +110,9 @@ class ReadManga : GroupLe("ReadManga", "https://readmanga.live", "ru") {
Genre("Арт", "el_5685"),
Genre("Ёнкома", "el_2161"),
Genre("Комикс", "el_3515"),
Genre("Манга", "el_9451"),
Genre("Манхва", "el_3001"),
Genre("Маньхуа", "el_3002"),
Genre("Ранобэ", "el_8575"),
Genre("Маньхуа", "el_3002")
)
private fun getGenreList() = listOf(

View File

@ -10,10 +10,7 @@ import okhttp3.Request
class RuMIX : GroupLe("RuMIX", "https://rumix.me", "ru") {
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = "$baseUrl/search/advanced?offset=${70 * (page - 1)}".toHttpUrlOrNull()!!.newBuilder()
if (query.isNotEmpty()) {
url.addQueryParameter("q", query)
}
val url = super.searchMangaRequest(page, query, filters).url.newBuilder()
(if (filters.isEmpty()) getFilterList().reversed() else filters.reversed()).forEach { filter ->
when (filter) {
is OrderBy -> {

View File

@ -12,10 +12,7 @@ class SelfManga : GroupLe("SelfManga", "https://selfmanga.live", "ru") {
override val id: Long = 5227602742162454547
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = "$baseUrl/search/advanced?offset=${70 * (page - 1)}".toHttpUrlOrNull()!!.newBuilder()
if (query.isNotEmpty()) {
url.addQueryParameter("q", query)
}
val url = super.searchMangaRequest(page, query, filters).url.newBuilder()
(if (filters.isEmpty()) getFilterList().reversed() else filters.reversed()).forEach { filter ->
when (filter) {
is GenreList -> filter.state.forEach { genre ->

View File

@ -15,6 +15,7 @@ import eu.kanade.tachiyomi.source.model.SManga
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.Headers
import okhttp3.HttpUrl.Companion.toHttpUrlOrNull
import okhttp3.OkHttpClient
import okhttp3.Request
import okhttp3.Response
@ -92,6 +93,14 @@ abstract class GroupLe(
override fun searchMangaNextPageSelector() = popularMangaNextPageSelector()
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = "$baseUrl/search/advanced?offset=${50 * (page - 1)}".toHttpUrlOrNull()!!.newBuilder()
if (query.isNotEmpty()) {
url.addQueryParameter("q", query)
}
return GET(url.toString().replace("=%3D", "="), headers)
}
override fun mangaDetailsParse(document: Document): SManga {
val infoElement = document.select(".expandable").first()
val rawCategory = infoElement.select("span.elem_category").text()

View File

@ -9,7 +9,7 @@ class GroupLeGenerator : ThemeSourceGenerator {
override val themeClass = "GroupLe"
override val baseVersionCode: Int = 6
override val baseVersionCode: Int = 7
override val sources = listOf(
SingleLang("ReadManga", "https://readmanga.live", "ru", overrideVersionCode = 46),