From 26be293f24e192b775d46eade575d751cd774622 Mon Sep 17 00:00:00 2001 From: Koitharu Date: Mon, 27 May 2024 13:18:15 +0300 Subject: [PATCH] [ComicK] Fix volume & chapter numbers --- .../kotatsu/parsers/site/all/ComickFunParser.kt | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/all/ComickFunParser.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/all/ComickFunParser.kt index 832f1705..68b3a9d1 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/all/ComickFunParser.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/all/ComickFunParser.kt @@ -179,10 +179,9 @@ internal class ComickFunParser(context: MangaLoaderContext) : PagedMangaParser(c url = "https://api.${domain}/comic/$hid/chapters?limit=$CHAPTERS_LIMIT", ).parseJson().getJSONArray("chapters") val dateFormat = SimpleDateFormat("yyyy-MM-dd") - val counters = HashMap() return ja.toJSONList().reversed().mapChapters { _, jo -> - val vol = jo.getStringOrNull("vol") - val chap = jo.getStringOrNull("chap") + val vol = jo.getIntOrDefault("vol", 0) + val chap = jo.getFloatOrDefault("chap", 0f) val locale = Locale.forLanguageTag(jo.getString("lang")) val group = jo.optJSONArray("group_name")?.joinToString(", ") val branch = buildString { @@ -196,11 +195,14 @@ internal class ComickFunParser(context: MangaLoaderContext) : PagedMangaParser(c MangaChapter( id = generateUid(jo.getLong("id")), name = buildString { - vol?.let { append("Vol ").append(it).append(' ') } - chap?.let { append("Chap ").append(it) } + if (vol > 0) { + append("Vol ").append(vol).append(' ') + } + append("Chap ").append(chap) jo.getStringOrNull("title")?.let { append(": ").append(it) } }, - number = counters.incrementAndGet(branch), + number = chap, + volume = vol, url = jo.getString("hid"), scanlator = jo.optJSONArray("group_name")?.asIterable()?.joinToString() ?.takeUnless { it.isBlank() },