[site/vi] Update domain + Small fixes (#1804)

* [VioletScans] Move to "en"

* [site/vi] Update sources domain

* [Madara] Split and allow overwrite for "postData"

--------------------------

Co-authored-by: Draken <dragonx943@users.noreply.github.com>
Draken 11 months ago committed by GitHub
parent 884142a15e
commit f066be47fe
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -615,11 +615,13 @@ internal abstract class MadaraParser(
} }
} }
protected open val postDataReq = "action=manga_get_chapters&manga="
protected open suspend fun loadChapters(mangaUrl: String, document: Document): List<MangaChapter> { protected open suspend fun loadChapters(mangaUrl: String, document: Document): List<MangaChapter> {
val doc = if (postReq) { val doc = if (postReq) {
val mangaId = document.select("div#manga-chapters-holder").attr("data-id") val mangaId = document.select("div#manga-chapters-holder").attr("data-id")
val url = "https://$domain/wp-admin/admin-ajax.php" val url = "https://$domain/wp-admin/admin-ajax.php"
val postData = "action=manga_get_chapters&manga=$mangaId" val postData = postDataReq + mangaId
webClient.httpPost(url, postData).parseHtml() webClient.httpPost(url, postData).parseHtml()
} else { } else {
val url = mangaUrl.toAbsoluteUrl(domain).removeSuffix('/') + "/ajax/chapters/" val url = mangaUrl.toAbsoluteUrl(domain).removeSuffix('/') + "/ajax/chapters/"

@ -22,6 +22,7 @@ internal class HentaiCube(context: MangaLoaderContext) :
override val datePattern = "dd/MM/yyyy" override val datePattern = "dd/MM/yyyy"
override val postReq = true override val postReq = true
override val postDataReq = "action=manga_views&manga="
override suspend fun getFilterOptions() = MangaListFilterOptions( override suspend fun getFilterOptions() = MangaListFilterOptions(
availableTags = fetchTags(), availableTags = fetchTags(),

@ -13,7 +13,7 @@ import java.util.*
@MangaSourceParser("HENTAIZ", "HentaiZ", "vi", ContentType.HENTAI) @MangaSourceParser("HENTAIZ", "HentaiZ", "vi", ContentType.HENTAI)
internal class HentaiZ(context: MangaLoaderContext) : internal class HentaiZ(context: MangaLoaderContext) :
MadaraParser(context, MangaParserSource.HENTAIZ, "hentaiz.now", 24) { MadaraParser(context, MangaParserSource.HENTAIZ, "hentaiz.bar", 24) {
override val listUrl = "truyen-hentai/" override val listUrl = "truyen-hentai/"
override val tagPrefix = "the-loai/" override val tagPrefix = "the-loai/"
override val datePattern = "dd/MM/yyyy" override val datePattern = "dd/MM/yyyy"

@ -22,7 +22,7 @@ private const val PAGE_SIZE = 20
internal class CMangaParser(context: MangaLoaderContext) : internal class CMangaParser(context: MangaLoaderContext) :
LegacyPagedMangaParser(context, MangaParserSource.CMANGA, PAGE_SIZE), MangaParserAuthProvider { LegacyPagedMangaParser(context, MangaParserSource.CMANGA, PAGE_SIZE), MangaParserAuthProvider {
override val configKeyDomain: ConfigKey.Domain = ConfigKey.Domain("cmangax1.com") override val configKeyDomain: ConfigKey.Domain = ConfigKey.Domain("cmangax2.com")
override val availableSortOrders: Set<SortOrder> override val availableSortOrders: Set<SortOrder>
get() = EnumSet.of( get() = EnumSet.of(

@ -18,7 +18,7 @@ import java.util.*
internal class DamCoNuong(context: MangaLoaderContext) : internal class DamCoNuong(context: MangaLoaderContext) :
LegacyPagedMangaParser(context, MangaParserSource.DAMCONUONG, 30) { LegacyPagedMangaParser(context, MangaParserSource.DAMCONUONG, 30) {
override val configKeyDomain = ConfigKey.Domain("damconuong.me") override val configKeyDomain = ConfigKey.Domain("damconuong.site")
private val availableTags = suspendLazy(initializer = ::fetchTags) private val availableTags = suspendLazy(initializer = ::fetchTags)

@ -16,7 +16,7 @@ internal class DuaLeoTruyen(context: MangaLoaderContext) :
LegacyPagedMangaParser(context, MangaParserSource.DUALEOTRUYEN, 60) { LegacyPagedMangaParser(context, MangaParserSource.DUALEOTRUYEN, 60) {
override val configKeyDomain: ConfigKey.Domain override val configKeyDomain: ConfigKey.Domain
get() = ConfigKey.Domain("dualeotruyenm.com") get() = ConfigKey.Domain("dualeotruyeno.com")
override val userAgentKey = ConfigKey.UserAgent(UserAgents.CHROME_DESKTOP) override val userAgentKey = ConfigKey.UserAgent(UserAgents.CHROME_DESKTOP)

@ -23,7 +23,7 @@ internal class VcomycsParser(context: MangaLoaderContext) :
LegacyPagedMangaParser(context, MangaParserSource.VCOMYCS, 36) { LegacyPagedMangaParser(context, MangaParserSource.VCOMYCS, 36) {
override val configKeyDomain: ConfigKey.Domain override val configKeyDomain: ConfigKey.Domain
get() = ConfigKey.Domain("vivicomi3.info") get() = ConfigKey.Domain("vivicomi4.info")
override val availableSortOrders: Set<SortOrder> override val availableSortOrders: Set<SortOrder>
get() = EnumSet.of(SortOrder.UPDATED) get() = EnumSet.of(SortOrder.UPDATED)

@ -27,7 +27,7 @@ internal abstract class WpComicsParser(
) : LegacyPagedMangaParser(context, source, pageSize) { ) : LegacyPagedMangaParser(context, source, pageSize) {
companion object { companion object {
const val netDomain = "nettruyenvnpt.com" const val netDomain = "nettruyen1975.com"
} }
override val configKeyDomain = ConfigKey.Domain(domain) override val configKeyDomain = ConfigKey.Domain(domain)

@ -14,7 +14,7 @@ import java.util.*
@MangaSourceParser("NEWTRUYEN", "NewTruyen", "vi") @MangaSourceParser("NEWTRUYEN", "NewTruyen", "vi")
internal class NewTruyen(context: MangaLoaderContext) : internal class NewTruyen(context: MangaLoaderContext) :
WpComicsParser(context, MangaParserSource.NEWTRUYEN, "newtruyen10.com", 36) { WpComicsParser(context, MangaParserSource.NEWTRUYEN, "newtruyen11.com", 36) {
override suspend fun getFilterOptions() = MangaListFilterOptions( override suspend fun getFilterOptions() = MangaListFilterOptions(
availableTags = getAvailableTags(), availableTags = getAvailableTags(),

@ -12,7 +12,7 @@ import java.util.*
@MangaSourceParser("TOPTRUYEN", "TopTruyen", "vi") @MangaSourceParser("TOPTRUYEN", "TopTruyen", "vi")
internal class TopTruyen(context: MangaLoaderContext) : internal class TopTruyen(context: MangaLoaderContext) :
WpComicsParser(context, MangaParserSource.TOPTRUYEN, "www.toptruyentv6.pro", 36) { WpComicsParser(context, MangaParserSource.TOPTRUYEN, "www.toptruyentv7.pro", 36) {
override val datePattern = "dd/MM/yyyy" override val datePattern = "dd/MM/yyyy"
@ -226,6 +226,7 @@ internal class TopTruyen(context: MangaLoaderContext) :
url.contains("image_default.png") || url.contains("image_default.png") ||
url.contains("toptruyentv5.jpg") || url.contains("toptruyentv5.jpg") ||
url.contains("toptruyentv6.jpg") || url.contains("toptruyentv6.jpg") ||
url.contains("toptruyentv7.jpg") ||
url.contains("img_001_1743221470.png")) { // Remove ads images url.contains("img_001_1743221470.png")) { // Remove ads images
return@mapNotNull null return@mapNotNull null
} }

Loading…
Cancel
Save