Implement exclude categories from deletion

This commit is contained in:
Jobobby04
2020-10-12 22:11:16 -04:00
parent eea1f696ca
commit 405b0580fc
8 changed files with 67 additions and 3 deletions
@@ -0,0 +1,20 @@
package exh.util
import eu.kanade.tachiyomi.data.database.DatabaseHelper
import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
fun Manga.shouldDeleteChapters(db: DatabaseHelper, prefs: PreferencesHelper): Boolean {
if (!favorite) return true
val categoriesToNotDeleteFrom = prefs.dontDeleteFromCategories().get().map(String::toInt)
if (categoriesToNotDeleteFrom.isEmpty()) return true
// Get all categories, else default category (0)
val categoriesForManga =
db.getCategoriesForManga(this).executeAsBlocking()
.mapNotNull { it.id }
.takeUnless { it.isEmpty() } ?: listOf(0)
return categoriesForManga.any { it !in categoriesToNotDeleteFrom }
}