parent
5b86fbc9d0
commit
9be7dd8c9a
@ -5,7 +5,7 @@ ext {
|
||||
appName = 'Tachiyomi: FMReader (multiple aggregators)'
|
||||
pkgNameSuffix = 'all.fmreader'
|
||||
extClass = '.FMReaderFactory'
|
||||
extVersionCode = 1
|
||||
extVersionCode = 2
|
||||
libVersion = '1.2'
|
||||
}
|
||||
|
||||
|
@ -69,7 +69,7 @@ abstract class FMReader (
|
||||
}
|
||||
|
||||
override fun latestUpdatesRequest(page: Int): Request =
|
||||
GET("$baseUrl/$requestPath?listType=pagination&page=$page&sort=last_update&sort_type=DESC")
|
||||
GET("$baseUrl/$requestPath?listType=pagination&page=$page&sort=last_update&sort_type=DESC", headers)
|
||||
|
||||
// for sources that don't have the "page x of y" element
|
||||
fun defaultMangaParse(response: Response): MangasPage = super.popularMangaParse(response)
|
||||
@ -236,7 +236,7 @@ abstract class FMReader (
|
||||
|
||||
private class TextField(name: String, val key: String) : Filter.Text(name)
|
||||
private class Status : Filter.Select<String>("Status", arrayOf("Any", "Completed", "Ongoing"))
|
||||
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genre", genres)
|
||||
class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genre", genres)
|
||||
class Genre(name: String, val id: String = name.replace(' ', '+')) : Filter.TriState(name)
|
||||
private class SortBy : Filter.Sort("Sorted By", arrayOf("A-Z", "Most vỉews", "Last updated"), Selection(1, false))
|
||||
|
||||
|
@ -30,7 +30,9 @@ class FMReaderFactory : SourceFactory {
|
||||
TruyenTranhLH(),
|
||||
EighteenLHPlus(),
|
||||
MangaTR(),
|
||||
Comicastle()
|
||||
Comicastle(),
|
||||
Manhwa18Net(),
|
||||
Manhwa18NetRaw()
|
||||
)
|
||||
}
|
||||
|
||||
@ -235,7 +237,25 @@ class Comicastle : FMReader("Comicastle", "https://www.comicastle.org", "en") {
|
||||
override fun imageUrlParse(document: Document): String = document.select("img.chapter-img").attr("abs:src").trim()
|
||||
override fun getGenreList() = getComicsGenreList()
|
||||
}
|
||||
|
||||
class Manhwa18Net : FMReader("Manhwa18.net", "https://manhwa18.net", "en") {
|
||||
override fun popularMangaRequest(page: Int): Request =
|
||||
GET("$baseUrl/$requestPath?listType=pagination&page=$page&sort=views&sort_type=DESC&ungenre=raw", headers)
|
||||
override fun latestUpdatesRequest(page: Int): Request =
|
||||
GET("$baseUrl/$requestPath?listType=pagination&page=$page&sort=last_update&sort_type=DESC&ungenre=raw", headers)
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
|
||||
val noRawsUrl = super.searchMangaRequest(page, query, filters).url().newBuilder().addQueryParameter("ungenre", "raw").toString()
|
||||
return GET(noRawsUrl, headers)
|
||||
}
|
||||
override fun getGenreList() = getAdultGenreList()
|
||||
}
|
||||
class Manhwa18NetRaw : FMReader("Manhwa18.net Raw", "https://manhwa18.net", "ko") {
|
||||
override val requestPath = "manga-list-genre-raw.html"
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
|
||||
val onlyRawsUrl = super.searchMangaRequest(page, query, filters).url().newBuilder().addQueryParameter("genre", "raw").toString()
|
||||
return GET(onlyRawsUrl, headers)
|
||||
}
|
||||
override fun getFilterList() = FilterList(super.getFilterList().filterNot { it == GenreList(getGenreList()) })
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user