Merge pull request #385 from KotatsuApp/add-hiatus

add hiatus
feature/filter-ex
Koitharu 2 years ago committed by GitHub
commit 11f110b0bb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -99,11 +99,14 @@ internal class BentomangaParser(context: MangaLoaderContext) : PagedMangaParser(
val root = webClient.httpGet(mangaUrl).parseHtml() val root = webClient.httpGet(mangaUrl).parseHtml()
.requireElementById("container_manga_show") .requireElementById("container_manga_show")
return manga.copy( return manga.copy(
altTitle = root.selectFirst(".component-manga-title_alt")?.textOrNull().assertNotNull("altTitle"), altTitle = root.selectFirst(".component-manga-title_alt")?.text(),
description = root.selectFirst(".datas_synopsis")?.html().assertNotNull("description") description = root.selectFirst(".datas_synopsis")?.html().assertNotNull("description")
?: manga.description, ?: manga.description,
state = when (root.selectFirst(".datas_more-status-data")?.textOrNull().assertNotNull("status")) { state = when (root.selectFirst(".datas_more-status-data")?.textOrNull().assertNotNull("status")) {
"En cours" -> MangaState.ONGOING "En cours" -> MangaState.ONGOING
"Terminé" -> MangaState.FINISHED
"Abandonné" -> MangaState.ABANDONED
"En pause" -> MangaState.PAUSED
else -> null else -> null
}, },
author = root.selectFirst(".datas_more-authors-people")?.textOrNull().assertNotNull("author"), author = root.selectFirst(".datas_more-authors-people")?.textOrNull().assertNotNull("author"),

@ -29,11 +29,9 @@ internal class FmTeam(context: MangaLoaderContext) :
if (page > 1) { if (page > 1) {
return emptyList() return emptyList()
} }
val jsonManga = if (!query.isNullOrEmpty()) { val jsonManga = if (!query.isNullOrEmpty()) {
//3 letters minimum //3 letters minimum
webClient.httpGet("https://$domain/api/search/${query.urlEncoded()}").parseJson().getJSONArray("comics") webClient.httpGet("https://$domain/api/search/${query.urlEncoded()}").parseJson().getJSONArray("comics")
} else { } else {
webClient.httpGet("https://$domain/api/comics").parseJson().getJSONArray("comics") webClient.httpGet("https://$domain/api/comics").parseJson().getJSONArray("comics")
} }

@ -100,6 +100,7 @@ internal abstract class HeanCms(
"Ongoing" -> MangaState.ONGOING "Ongoing" -> MangaState.ONGOING
"Completed" -> MangaState.FINISHED "Completed" -> MangaState.FINISHED
"Dropped" -> MangaState.ABANDONED "Dropped" -> MangaState.ABANDONED
"Hiatus" -> MangaState.PAUSED
else -> null else -> null
}, },
author = null, author = null,

@ -84,6 +84,7 @@ internal class YugenMangasEs(context: MangaLoaderContext) :
"Ongoing" -> MangaState.ONGOING "Ongoing" -> MangaState.ONGOING
"Completed" -> MangaState.FINISHED "Completed" -> MangaState.FINISHED
"Dropped" -> MangaState.ABANDONED "Dropped" -> MangaState.ABANDONED
"Hiatus" -> MangaState.PAUSED
else -> null else -> null
}, },
author = null, author = null,

@ -139,6 +139,16 @@ internal abstract class MadaraParser(
"Abandonné", "Abandonné",
) )
@JvmField
protected val paused: Set<String> = hashSetOf(
"Hiatus",
"On Hold",
"Pausado",
"En espera",
"En pause",
"En attente",
)
// Change these values only if the site does not support manga listings via ajax // Change these values only if the site does not support manga listings via ajax
protected open val withoutAjax = false protected open val withoutAjax = false
@ -234,11 +244,11 @@ internal abstract class MadaraParser(
) )
}.orEmpty(), }.orEmpty(),
author = summary?.selectFirst(".mg_author")?.selectFirst("a")?.ownText(), author = summary?.selectFirst(".mg_author")?.selectFirst("a")?.ownText(),
state = when (summary?.selectFirst(".mg_status")?.selectFirst(".summary-content")?.ownText() state = when (summary?.selectFirst(".mg_status")?.selectFirst(".summary-content")?.ownText()) {
?.lowercase()) {
in ongoing -> MangaState.ONGOING in ongoing -> MangaState.ONGOING
in finished -> MangaState.FINISHED in finished -> MangaState.FINISHED
in abandoned -> MangaState.ABANDONED in abandoned -> MangaState.ABANDONED
in paused -> MangaState.PAUSED
else -> null else -> null
}, },
source = source, source = source,
@ -316,6 +326,7 @@ internal abstract class MadaraParser(
in ongoing -> MangaState.ONGOING in ongoing -> MangaState.ONGOING
in finished -> MangaState.FINISHED in finished -> MangaState.FINISHED
in abandoned -> MangaState.ABANDONED in abandoned -> MangaState.ABANDONED
in paused -> MangaState.PAUSED
else -> null else -> null
} }
} }

@ -181,20 +181,24 @@ internal abstract class MangaReaderParser(
val mangaState = state?.let { val mangaState = state?.let {
when (it.text()) { when (it.text()) {
"مستمرة", "En curso", "En Curso", "Ongoing", "OnGoing", "On going", "Ativo", "En Cours", "En cours",
"En cours \uD83D\uDFE2", "En cours de publication", "Đang tiến hành", "Em lançamento", "em lançamento", "Em Lançamento", "مستمرة", "En curso", "En Curso", "Ongoing", "OnGoing", "On going", "Ativo", "En Cours", "En cours", "En cours \uD83D\uDFE2",
"Онгоінг", "Publishing", "Devam Ediyor", "Em Andamento", "In Corso", "Güncel", "Berjalan", "Продолжается", "Updating", "En cours de publication", "Đang tiến hành", "Em lançamento", "em lançamento", "Em Lançamento", "Онгоінг", "Publishing",
"Lançando", "In Arrivo", "Emision", "En emision", "مستمر", "Curso", "En marcha", "Publicandose", "Publicando", "连载中", "Devam Ediyor", "Em Andamento", "In Corso", "Güncel", "Berjalan", "Продолжается", "Updating", "Lançando", "In Arrivo", "Emision",
"Devam ediyor", "Devam Etmekte", "En emision", "مستمر", "Curso", "En marcha", "Publicandose", "Publicando", "连载中", "Devam ediyor", "Devam Etmekte",
-> MangaState.ONGOING -> MangaState.ONGOING
"Completed", "Completo", "Complété", "Fini", "Achevé", "Terminé", "Terminé ⚫", "Tamamlandı", "Đã hoàn thành", "Hoàn Thành", "مكتملة", "Completed", "Completo", "Complété", "Fini", "Achevé", "Terminé", "Terminé ⚫", "Tamamlandı", "Đã hoàn thành", "Hoàn Thành",
"Завершено", "Finished", "Finalizado", "Completata", "One-Shot", "Bitti", "Tamat", "Completado", "Concluído", "Concluido", "已完结", "Bitmiş", "مكتملة", "Завершено", "Finished", "Finalizado", "Completata", "One-Shot", "Bitti", "Tamat", "Completado", "Concluído",
"Concluido", "已完结", "Bitmiş",
-> MangaState.FINISHED -> MangaState.FINISHED
"Canceled", "Cancelled", "Cancelado", "cancellato", "Cancelados", "Dropped", "Discontinued", "abandonné", "Abandonné", "Canceled", "Cancelled", "Cancelado", "cancellato", "Cancelados", "Dropped", "Discontinued", "abandonné", "Abandonné",
-> MangaState.ABANDONED -> MangaState.ABANDONED
"Hiatus", "On Hold", "Pausado", "En espera", "En pause", "En Pause", "En attente",
-> MangaState.PAUSED
else -> null else -> null
} }
} }

@ -138,12 +138,18 @@ internal abstract class NepnepParser(
return manga.copy( return manga.copy(
altTitle = null, altTitle = null,
state = when (doc.selectFirstOrThrow(".list-group-item:contains(Status:) a").text()) { state = when (doc.selectFirstOrThrow(".list-group-item:contains(Status:) a").text()) {
"Ongoing (Scan)", "Ongoing (Publish)" -> MangaState.ONGOING "Ongoing (Scan)", "Ongoing (Publish)",
-> MangaState.ONGOING
"Complete (Scan)", "Complete (Publish)", "Complete (Scan)", "Complete (Publish)",
-> MangaState.FINISHED
"Cancelled (Scan)", "Cancelled (Publish)", "Cancelled (Scan)", "Cancelled (Publish)",
"Discontinued (Scan)", "Discontinued (Publish)", "Discontinued (Scan)", "Discontinued (Publish)",
-> MangaState.ABANDONED
"Hiatus (Scan)", "Hiatus (Publish)", "Hiatus (Scan)", "Hiatus (Publish)",
-> MangaState.FINISHED -> MangaState.PAUSED
else -> null else -> null
}, },

Loading…
Cancel
Save