Fix most unknown titles
This commit is contained in:
parent
fb4d15d9ef
commit
b227f2a4a5
@ -57,7 +57,7 @@ class ApiMangaParser(
|
||||
try {
|
||||
val mangaAttributesDto = mangaDto.data.attributes
|
||||
mdUuid = mangaDto.data.id
|
||||
title = MdUtil.cleanString(mangaAttributesDto.title.asMdMap().let { it[lang] ?: it["en"].orEmpty() })
|
||||
title = MdUtil.cleanString(MdUtil.getFromLangMap(mangaAttributesDto.title.asMdMap(), lang, mangaAttributesDto.originalLanguage))
|
||||
altTitles = mangaAttributesDto.altTitles.mapNotNull { it[lang] }.nullIfEmpty()
|
||||
|
||||
val mangaRelationshipsDto = mangaDto.data.relationships
|
||||
@ -69,7 +69,7 @@ class ApiMangaParser(
|
||||
cover = MdUtil.cdnCoverUrl(mangaDto.data.id, coverFileName)
|
||||
}
|
||||
|
||||
description = MdUtil.cleanDescription(MdUtil.getTitle(mangaAttributesDto.description.asMdMap(), lang, mangaAttributesDto.originalLanguage))
|
||||
description = MdUtil.cleanDescription(MdUtil.getFromLangMap(mangaAttributesDto.description.asMdMap(), lang, mangaAttributesDto.originalLanguage))
|
||||
|
||||
authors = mangaRelationshipsDto.filter { relationshipDto ->
|
||||
relationshipDto.type.equals(MdConstants.Types.author, true)
|
||||
|
@ -265,7 +265,7 @@ class MdUtil {
|
||||
fun createMangaEntry(json: MangaDataDto, lang: String): MangaInfo {
|
||||
return MangaInfo(
|
||||
key = buildMangaUrl(json.id),
|
||||
title = cleanString(getTitle(json.attributes.title.asMdMap(), lang, json.attributes.originalLanguage)),
|
||||
title = cleanString(getFromLangMap(json.attributes.title.asMdMap(), lang, json.attributes.originalLanguage)),
|
||||
cover = json.relationships
|
||||
.firstOrNull { relationshipDto -> relationshipDto.type == MdConstants.Types.coverArt }
|
||||
?.attributes
|
||||
@ -276,10 +276,10 @@ class MdUtil {
|
||||
)
|
||||
}
|
||||
|
||||
fun getTitle(titleMap: Map<String, String?>, currentLang: String, originalLanguage: String): String {
|
||||
return titleMap[currentLang] ?: titleMap["en"] ?: titleMap[originalLanguage].let {
|
||||
fun getFromLangMap(langMap: Map<String, String?>, currentLang: String, originalLanguage: String): String {
|
||||
return langMap[currentLang] ?: langMap["en"] ?: langMap[originalLanguage].let {
|
||||
if (it == null && originalLanguage == "ja") {
|
||||
titleMap["jp"]
|
||||
langMap["jp"]
|
||||
} else {
|
||||
it
|
||||
}.orEmpty()
|
||||
|
Loading…
x
Reference in New Issue
Block a user