63 lines
2.0 KiB
Kotlin
63 lines
2.0 KiB
Kotlin
package eu.kanade.tachiyomi.extension.all.manhwa18net
|
|
|
|
import eu.kanade.tachiyomi.multisrc.mymangacms.MyMangaCMS
|
|
import eu.kanade.tachiyomi.source.model.FilterList
|
|
|
|
class Manhwa18Net : MyMangaCMS("Manhwa18.net", "https://manhwa18.net", "en") {
|
|
|
|
// Migrated from FMReader to MyMangaCms.
|
|
override val versionId = 2
|
|
|
|
override val parseAuthorString = "Author"
|
|
override val parseAlternativeNameString = "Other name"
|
|
override val parseAlternative2ndNameString = "Doujinshi"
|
|
override val parseStatusString = "Status"
|
|
override val parseStatusOngoingStringLowerCase = "on going"
|
|
override val parseStatusOnHoldStringLowerCase = "on hold"
|
|
override val parseStatusCompletedStringLowerCase = "completed"
|
|
|
|
override fun getFilterList(): FilterList = FilterList(
|
|
Author("Author"),
|
|
Status(
|
|
"Status",
|
|
"All",
|
|
"Ongoing",
|
|
"On hold",
|
|
"Completed",
|
|
),
|
|
Sort(
|
|
"Order",
|
|
"A-Z",
|
|
"Z-A",
|
|
"Latest update",
|
|
"New manhwa",
|
|
"Most view",
|
|
"Most like",
|
|
),
|
|
GenreList(getGenreList(), "Genre"),
|
|
)
|
|
|
|
// To populate this list:
|
|
// console.log([...document.querySelectorAll("div.search-gerne_item")].map(elem => `Genre("${elem.textContent.trim()}", ${elem.querySelector("label").getAttribute("data-genre-id")}),`).join("\n"))
|
|
override fun getGenreList() = listOf(
|
|
Genre("Adult", 4),
|
|
Genre("Doujinshi", 9),
|
|
Genre("Harem", 17),
|
|
Genre("Manga", 24),
|
|
Genre("Manhwa", 26),
|
|
Genre("Mature", 28),
|
|
Genre("NTR", 33),
|
|
Genre("Romance", 36),
|
|
Genre("Webtoon", 57),
|
|
Genre("Action", 59),
|
|
Genre("Comedy", 60),
|
|
Genre("BL", 61),
|
|
Genre("Horror", 62),
|
|
Genre("Raw", 63),
|
|
Genre("Uncensore", 64),
|
|
)
|
|
|
|
override fun dateUpdatedParser(date: String): Long =
|
|
runCatching { dateFormatter.parse(date.substringAfter(" - "))?.time }.getOrNull() ?: 0L
|
|
}
|