From c1a7fc26244f315f6b1737c0ba02f4df768b9f37 Mon Sep 17 00:00:00 2001 From: Draken <131387159+dragonx943@users.noreply.github.com> Date: Mon, 30 Sep 2024 01:29:46 +0700 Subject: [PATCH 1/5] Update CuuTruyenParser.kt --- .../parsers/site/vi/CuuTruyenParser.kt | 147 +++++++++++++++++- 1 file changed, 142 insertions(+), 5 deletions(-) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt index 3b9ca085..fb8f4895 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt @@ -42,16 +42,153 @@ internal class CuuTruyenParser(context: MangaLoaderContext) : override val filterCapabilities: MangaListFilterCapabilities get() = MangaListFilterCapabilities( + isMultipleTagsSupported = false, isSearchSupported = true, ) - override suspend fun getFilterOptions() = MangaListFilterOptions() - - override fun onCreateConfig(keys: MutableCollection>) { - super.onCreateConfig(keys) - keys.add(userAgentKey) + override suspend fun getFilterOptions(): MangaListFilterOptions { + return MangaListFilterOptions( + availableTags = tagList.map { MangaTag(it.name, it.id, source) }.toSet(), + ) } + private data class Tag(val name: String, val id: String) + + private val tagList = listOf( + Tag("Tất cả", ""), + Tag("Manga", "manga"), + Tag("Đang tiến hành", "dang-tien-hanh"), + Tag("Thể thao", "the-thao"), + Tag("Hài hước", "hai-huoc"), + Tag("Shounen", "shounen"), + Tag("Học đường", "hoc-duong"), + Tag("Chất lượng cao", "chat-luong-cao"), + Tag("Comedy", "comedy"), + Tag("Action", "action"), + Tag("Horror", "horror"), + Tag("Sci-fi", "sci-fi"), + Tag("Aliens", "aliens"), + Tag("Martial Arts", "martial-arts"), + Tag("Military", "military"), + Tag("Monsters", "monsters"), + Tag("Supernatural", "supernatural"), + Tag("Web Comic", "web-comic"), + Tag("Phiêu lưu", "phieu-luu"), + Tag("Hậu tận thế", "hau-tan-the"), + Tag("Hành động", "hanh-dong"), + Tag("Đã hoàn thành", "da-hoan-thanh"), + Tag("Sinh tồn", "sinh-ton"), + Tag("Du hành thời gian", "du-hanh-thoi-gian"), + Tag("Khoa học", "khoa-hoc"), + Tag("Tạm ngưng", "tam-ngung"), + Tag("NSFW", "nsfw"), + Tag("Bạo lực", "bao-luc"), + Tag("Khoả thân", "khoa-than"), + Tag("Bí ẩn", "bi-an"), + Tag("Trinh thám", "trinh-tham"), + Tag("Kinh dị", "kinh-di"), + Tag("Máu me", "mau-me"), + Tag("Tình dục", "tinh-duc"), + Tag("Có màu", "co-mau"), + Tag("Manhwa", "manhwa"), + Tag("Webtoon", "webtoon"), + Tag("Siêu nhiên", "sieu-nhien"), + Tag("Fantasy", "fantasy"), + Tag("Võ thuật", "vo-thuat"), + Tag("Drama", "drama"), + Tag("Hệ thống", "he-thong"), + Tag("Lãng mạn", "lang-man"), + Tag("Đời thường", "doi-thuong"), + Tag("Công sở", "cong-so"), + Tag("Sát thủ", "sat-thu"), + Tag("Phép thuật", "phep-thuat"), + Tag("Tội phạm", "toi-pham"), + Tag("Seinen", "seinen"), + Tag("Isekai", "isekai"), + Tag("Chuyển sinh", "chuyen-sinh"), + Tag("Harem", "harem"), + Tag("Mecha", "mecha"), + Tag("Trung cổ", "trung-co"), + Tag("LGBT", "lgbt"), + Tag("Yaoi", "yaoi"), + Tag("Game", "game"), + Tag("Bi kịch", "bi-kich"), + Tag("Động vật", "dong-vat"), + Tag("Tâm lý", "tam-ly"), + Tag("Manhua", "manhua"), + Tag("Nam biến nữ", "nam-bien-nu"), + Tag("Romcom", "romcom"), + Tag("Award Winning", "award-winning"), + Tag("Oneshot", "oneshot"), + Tag("Khoa học viễn tưởng", "khoa-hoc-vien-tuong"), + Tag("Dark Fantasy", "dark-fantasy"), + Tag("Zombie", "zombie"), + Tag("Nam x Nam", "nam-x-nam"), + Tag("Giật gân", "giat-gan"), + Tag("Cảnh sát", "canh-sat"), + Tag("NTR", "ntr"), + Tag("Cooking", "cooking"), + Tag("Ẩm thực", "am-thuc"), + Tag("Ecchi", "ecchi"), + Tag("Quái vật", "quai-vat"), + Tag("Vampires", "vampires"), + Tag("Nam giả nữ", "nam-gia-nu"), + Tag("Yakuza", "yakuza"), + Tag("Romance", "romance"), + Tag("Sport", "sport"), + Tag("Shoujo", "shoujo"), + Tag("Ninja", "ninja"), + Tag("Lịch sử", "lich-su"), + Tag("Doujinshi", "doujinshi"), + Tag("Databook", "databook"), + Tag("Adventure", "adventure"), + Tag("Y học", "y-hoc"), + Tag("Miễn bản quyền", "mien-ban-quyen"), + Tag("Josei", "josei"), + Tag("Psychological", "psychological"), + Tag("Anime", "anime"), + Tag("Yuri", "yuri"), + Tag("Yonkoma", "yonkoma"), + Tag("Quân đội", "quan-doi"), + Tag("Nữ giả nam", "nu-gia-nam"), + Tag("Chính trị", "chinh-tri"), + Tag("Tuyển tập", "tuyen-tap"), + Tag("Tu tiên", "tu-tien"), + Tag("Vô CP", "vo-cp"), + Tag("Xuyên không", "xuyen-khong"), + Tag("Việt Nam", "viet-nam"), + Tag("Toán học", "toan-hoc"), + Tag("Tình yêu không được đáp lại", "tinh-yeu-khong-duoc-dap-lai"), + Tag("Tình yêu thuần khiết", "tinh-yeu-thuan-khiet"), + Tag("Thiếu niên", "thieu-nien"), + Tag("Tình yêu", "tinh-yeu"), + Tag("Chính kịch", "chinh-kich"), + Tag("Ngọt ngào", "ngot-ngao"), + Tag("Wholesome", "wholesome"), + Tag("Smut", "smut"), + Tag("Gore", "gore"), + Tag("School Life", "school-life"), + Tag("Slice of Life", "slice-of-life"), + Tag("Tragedy", "tragedy"), + Tag("Mystery", "mystery"), + Tag("Atlus", "atlus"), + Tag("Sega", "sega"), + Tag("RPG", "rpg"), + Tag("Chuyển thể", "chuyen-the"), + Tag("Historical", "historical"), + Tag("Medical", "medical"), + Tag("Ghosts", "ghosts"), + Tag("Thriller", "thriller"), + Tag("Animals", "animals"), + Tag("Survival", "survival"), + Tag("Samurai", "samurai"), + Tag("Virtual Reality", "virtual-reality"), + Tag("Video Games", "video-games"), + Tag("Monster Girls", "monster-girls"), + Tag("Adaption", "adaption"), + Tag("Idol", "idol"), + ) + override suspend fun getListPage(page: Int, order: SortOrder, filter: MangaListFilter): List { val url = buildString { append("https://") From e3924d5b0611f8cfd1df1572c77b1d2838b6095f Mon Sep 17 00:00:00 2001 From: Draken <131387159+dragonx943@users.noreply.github.com> Date: Mon, 30 Sep 2024 02:10:08 +0700 Subject: [PATCH 2/5] Remove something Remove some Tags (not found manga with it) --- .../org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt index fb8f4895..94aed7d4 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt @@ -158,8 +158,6 @@ internal class CuuTruyenParser(context: MangaLoaderContext) : Tag("Xuyên không", "xuyen-khong"), Tag("Việt Nam", "viet-nam"), Tag("Toán học", "toan-hoc"), - Tag("Tình yêu không được đáp lại", "tinh-yeu-khong-duoc-dap-lai"), - Tag("Tình yêu thuần khiết", "tinh-yeu-thuan-khiet"), Tag("Thiếu niên", "thieu-nien"), Tag("Tình yêu", "tinh-yeu"), Tag("Chính kịch", "chinh-kich"), From 38ecde185a1b9869e61411b17ac750ae215dcfaa Mon Sep 17 00:00:00 2001 From: Draken <131387159+dragonx943@users.noreply.github.com> Date: Mon, 30 Sep 2024 02:17:42 +0700 Subject: [PATCH 3/5] Update CuuTruyenParser.kt --- .../org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt index 94aed7d4..492c649b 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/vi/CuuTruyenParser.kt @@ -34,6 +34,11 @@ internal class CuuTruyenParser(context: MangaLoaderContext) : "cuutruyent9sv7.xyz", ) + override fun onCreateConfig(keys: MutableCollection>) { + super.onCreateConfig(keys) + keys.add(userAgentKey) + } + override val availableSortOrders: Set = EnumSet.of( SortOrder.UPDATED, SortOrder.POPULARITY, From f58bb421e5357b3f002ed6e162f28a1e2706857a Mon Sep 17 00:00:00 2001 From: Draken <131387159+dragonx943@users.noreply.github.com> Date: Tue, 1 Oct 2024 13:08:05 +0700 Subject: [PATCH 4/5] Update DocTruyen3Q.kt --- .../koitharu/kotatsu/parsers/site/wpcomics/vi/DocTruyen3Q.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/wpcomics/vi/DocTruyen3Q.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/wpcomics/vi/DocTruyen3Q.kt index c5de80fd..e2ae41a4 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/wpcomics/vi/DocTruyen3Q.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/wpcomics/vi/DocTruyen3Q.kt @@ -4,7 +4,9 @@ import org.koitharu.kotatsu.parsers.MangaLoaderContext import org.koitharu.kotatsu.parsers.MangaSourceParser import org.koitharu.kotatsu.parsers.model.MangaParserSource import org.koitharu.kotatsu.parsers.site.wpcomics.WpComicsParser +import org.koitharu.kotatsu.parsers.Broken +@Broken @MangaSourceParser("DOCTRUYEN3Q", "DocTruyen3Q", "vi") internal class DocTruyen3Q(context: MangaLoaderContext) : WpComicsParser(context, MangaParserSource.DOCTRUYEN3Q, "doctruyen3qto.pro", 36) From 6ec65e4aa44e9c1ce54e8f620e0650766b993a10 Mon Sep 17 00:00:00 2001 From: Draken <131387159+dragonx943@users.noreply.github.com> Date: Tue, 1 Oct 2024 13:08:23 +0700 Subject: [PATCH 5/5] Update TopTruyenViet.kt --- .../koitharu/kotatsu/parsers/site/wpcomics/vi/TopTruyenViet.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/wpcomics/vi/TopTruyenViet.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/wpcomics/vi/TopTruyenViet.kt index 70c83864..de9e4224 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/wpcomics/vi/TopTruyenViet.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/wpcomics/vi/TopTruyenViet.kt @@ -4,7 +4,9 @@ import org.koitharu.kotatsu.parsers.MangaLoaderContext import org.koitharu.kotatsu.parsers.MangaSourceParser import org.koitharu.kotatsu.parsers.model.MangaParserSource import org.koitharu.kotatsu.parsers.site.wpcomics.WpComicsParser +import org.koitharu.kotatsu.parsers.Broken +@Broken @MangaSourceParser("TOPTRUYENVIET", "TopTruyen.pro", "vi") internal class TopTruyenViet(context: MangaLoaderContext) : WpComicsParser(context, MangaParserSource.TOPTRUYENVIET, "www.toptruyenzz.pro", 36)