mirror of
https://github.com/null2264/yokai.git
synced 2025-06-21 10:44:42 +00:00
fix(GH-228): Fixed filtered scanlator not working properly
This commit is contained in:
parent
d832f8ce46
commit
0a7a65aa33
4 changed files with 5 additions and 4 deletions
|
@ -72,7 +72,8 @@ open class MangaImpl : Manga {
|
||||||
|
|
||||||
override var update_strategy: UpdateStrategy = UpdateStrategy.ALWAYS_UPDATE
|
override var update_strategy: UpdateStrategy = UpdateStrategy.ALWAYS_UPDATE
|
||||||
|
|
||||||
override var filtered_scanlators: String? = null
|
// TODO: It's probably fine to set this to non-null string in the future
|
||||||
|
override var filtered_scanlators: String? = ""
|
||||||
|
|
||||||
override lateinit var ogTitle: String
|
override lateinit var ogTitle: String
|
||||||
override var ogAuthor: String? = null
|
override var ogAuthor: String? = null
|
||||||
|
|
|
@ -205,7 +205,7 @@ suspend fun syncChaptersWithSource(
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun List<Chapter>.filterChaptersByScanlators(manga: Manga): List<Chapter> {
|
private fun List<Chapter>.filterChaptersByScanlators(manga: Manga): List<Chapter> {
|
||||||
if (manga.filtered_scanlators == null) return this
|
if (manga.filtered_scanlators.isNullOrBlank()) return this
|
||||||
|
|
||||||
return this.filter { chapter ->
|
return this.filter { chapter ->
|
||||||
!ChapterUtil.getScanlators(manga.filtered_scanlators).contains(chapter.scanlator)
|
!ChapterUtil.getScanlators(manga.filtered_scanlators).contains(chapter.scanlator)
|
||||||
|
|
|
@ -170,6 +170,7 @@ class ChapterUtil {
|
||||||
}
|
}
|
||||||
|
|
||||||
fun getScanlatorString(scanlators: Set<String>): String {
|
fun getScanlatorString(scanlators: Set<String>): String {
|
||||||
|
if (scanlators.isEmpty()) return ""
|
||||||
return scanlators.toList().sorted().joinToString(scanlatorSeparator)
|
return scanlators.toList().sorted().joinToString(scanlatorSeparator)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -9,8 +9,7 @@ object MangaUtil {
|
||||||
suspend fun setScanlatorFilter(updateManga: UpdateManga, manga: Manga, filteredScanlators: Set<String>) {
|
suspend fun setScanlatorFilter(updateManga: UpdateManga, manga: Manga, filteredScanlators: Set<String>) {
|
||||||
if (manga.id == null) return
|
if (manga.id == null) return
|
||||||
|
|
||||||
manga.filtered_scanlators =
|
manga.filtered_scanlators = ChapterUtil.getScanlatorString(filteredScanlators)
|
||||||
if (filteredScanlators.isEmpty()) null else ChapterUtil.getScanlatorString(filteredScanlators)
|
|
||||||
|
|
||||||
updateManga.await(MangaUpdate(manga.id!!, filteredScanlators = manga.filtered_scanlators))
|
updateManga.await(MangaUpdate(manga.id!!, filteredScanlators = manga.filtered_scanlators))
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue