2024-01-09 05:29:54 +06:00

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
}