NHentai - add a "other" language for those who want to use NHentai unfiltered (#4084)

This commit is contained in:
jobobby04 2020-08-12 00:04:28 -04:00 committed by GitHub
parent 61103d394c
commit 908d2e9d09
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 7 additions and 5 deletions

View File

@ -5,7 +5,7 @@ ext {
extName = 'NHentai'
pkgNameSuffix = 'all.nhentai'
extClass = '.NHFactory'
extVersionCode = 27
extVersionCode = 28
libVersion = '1.2'
containsNsfw = true
}

View File

@ -9,6 +9,7 @@ class NHFactory : SourceFactory {
override fun createSources(): List<Source> = listOf(
NHentai("en", "english"),
NHentai("ja", "japanese"),
NHentai("zh", "chinese")
NHentai("zh", "chinese"),
NHentai("other", "")
)
}

View File

@ -106,7 +106,7 @@ open class NHentai(
screen.addPreference(serverPref)
}
override fun latestUpdatesRequest(page: Int) = GET("$baseUrl/language/$nhLang/?page=$page", headers)
override fun latestUpdatesRequest(page: Int) = GET(if (nhLang.isBlank()) "$baseUrl/?page=$page" else "$baseUrl/language/$nhLang/?page=$page", headers)
override fun latestUpdatesSelector() = "#content .gallery"
@ -122,7 +122,7 @@ open class NHentai(
override fun latestUpdatesNextPageSelector() = "#content > section.pagination > a.next"
override fun popularMangaRequest(page: Int) = GET("$baseUrl/language/$nhLang/popular?page=$page", headers)
override fun popularMangaRequest(page: Int) = GET(if (nhLang.isBlank()) "$baseUrl/?page=$page" else "$baseUrl/language/$nhLang/popular?page=$page", headers)
override fun popularMangaFromElement(element: Element) = latestUpdatesFromElement(element)
@ -155,6 +155,7 @@ open class NHentai(
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val filterList = if (filters.isEmpty()) getFilterList() else filters
val nhLangSearch = if (nhLang.isBlank()) "" else "+$nhLang "
val advQuery = combineQuery(filterList)
val favoriteFilter = filterList.findInstance<FavoriteFilter>()
val isOkayToSort = filterList.findInstance<UploadedFilter>()?.state?.isBlank() ?: true
@ -167,7 +168,7 @@ open class NHentai(
return GET(url.toString(), headers)
} else {
val url = HttpUrl.parse("$baseUrl/search")!!.newBuilder()
.addQueryParameter("q", "$query +$nhLang $advQuery")
.addQueryParameter("q", "$query $nhLangSearch$advQuery")
.addQueryParameter("page", page.toString())
if (isOkayToSort) {