largeCover and better chapter branch name

pull/404/head
AwkwardPeak7 2 years ago
parent bf06ab7492
commit 0964c02a44
No known key found for this signature in database

@ -235,8 +235,12 @@ internal class NineNineNineHentaiParser(context: MangaLoaderContext) : PagedMang
description
language
pages
firstPics
tags
pictureUrls {
picCdn
pics
picsS
}
}
""".trimIndent()
@ -245,11 +249,20 @@ internal class NineNineNineHentaiParser(context: MangaLoaderContext) : PagedMang
val id = entry.getString("_id")
val name = entry.getString("name")
val cover = runCatching {
entry.getJSONArray("firstPics")
.getJSONObject(0)
.getString("url")
}.getOrNull()
val cover = entry.getJSONArray("pictureUrls")
.getJSONObject(0)
.let { pics ->
val cdn = pics.getString("picCdn").let {
if (it.startsWith("http")) {
"$it/"
} else {
"https://${cdnHost.get()}/$it/"
}
}
val img = pics.getJSONArray("pics").getJSONObject(0).getString("url")
val imgS = pics.getJSONArray("picsS").getJSONObject(0).getString("url")
Pair(cdn + imgS, cdn + img)
}
val tags = entry.optJSONArray("tags")?.mapJSON {
SiteTag(
name = it.getString("tagName"),
@ -259,11 +272,8 @@ internal class NineNineNineHentaiParser(context: MangaLoaderContext) : PagedMang
return manga.copy(
title = name.replace(shortenTitleRegex, "").trim(),
altTitle = name,
coverUrl = when {
cover?.startsWith("http") == true -> cover
cover == null -> ""
else -> "https://${cdnHost.get()}/$cover"
},
coverUrl = cover.first,
largeCoverUrl = cover.second,
author = tags?.filter { it.type == "artist" }?.joinToString { it.name.capitalize() },
isNsfw = true,
tags = tags?.mapToSet {
@ -284,12 +294,16 @@ internal class NineNineNineHentaiParser(context: MangaLoaderContext) : PagedMang
uploadDate = kotlin.runCatching {
dateFormat.parse(entry.getString("uploadDate"))!!.time
}.getOrDefault(0L),
branch = when (entry.getStringOrNull("language")) {
"en" -> "English"
"jp" -> "Japanese"
"cn" -> "Chinese"
"es" -> "Spanish"
else -> entry.getStringOrNull("language")?.capitalize()
branch = entry.getStringOrNull("language")?.let {
val locale = when (it) {
"en" -> Locale.ENGLISH
"jp" -> Locale.JAPANESE
"cn" -> Locale.CHINESE
"es" -> Locale("es")
else -> Locale.ROOT
}
return@let locale.getDisplayLanguage(locale)
},
scanlator = when(entry.getStringOrNull("format")) {
"artistcg" -> "ArtistCG"

Loading…
Cancel
Save