Lets try this out for full backup categories
This commit is contained in:
parent
acefd33e2e
commit
e987ba8c3e
@ -345,15 +345,12 @@ class FullBackupManager(context: Context) : AbstractBackupManager(context) {
|
|||||||
internal fun restoreCategoriesForManga(manga: Manga, categories: List<Int>, backupCategories: List<BackupCategory>) {
|
internal fun restoreCategoriesForManga(manga: Manga, categories: List<Int>, backupCategories: List<BackupCategory>) {
|
||||||
val dbCategories = databaseHelper.getCategories().executeAsBlocking()
|
val dbCategories = databaseHelper.getCategories().executeAsBlocking()
|
||||||
val mangaCategoriesToUpdate = mutableListOf<MangaCategory>()
|
val mangaCategoriesToUpdate = mutableListOf<MangaCategory>()
|
||||||
categories.forEach { backupCategoryOrder ->
|
val mappedCategories = categories.mapNotNull { mangaCategory -> backupCategories.firstOrNull { mangaCategory == it.order }?.let { it to mangaCategory } }
|
||||||
backupCategories.firstOrNull {
|
mappedCategories.forEach { mappedCategory ->
|
||||||
it.order == backupCategoryOrder
|
dbCategories.firstOrNull { dbCategory ->
|
||||||
}?.let { backupCategory ->
|
dbCategory.name == mappedCategory.first.name
|
||||||
dbCategories.firstOrNull { dbCategory ->
|
}?.also { dbCategory ->
|
||||||
dbCategory.name == backupCategory.name
|
mangaCategoriesToUpdate += MangaCategory.create(manga, dbCategory)
|
||||||
}?.let { dbCategory ->
|
|
||||||
mangaCategoriesToUpdate.add(MangaCategory.create(manga, dbCategory))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -521,7 +518,7 @@ class FullBackupManager(context: Context) : AbstractBackupManager(context) {
|
|||||||
preferences.eh_savedSearches()
|
preferences.eh_savedSearches()
|
||||||
.set(
|
.set(
|
||||||
(
|
(
|
||||||
backupSavedSearches.filter { backupSavedSearch -> currentSavedSearches.all { it.name != backupSavedSearch.name || it.source != backupSavedSearch.source } }
|
backupSavedSearches.filter { backupSavedSearch -> currentSavedSearches.none { it.name == backupSavedSearch.name && it.source == backupSavedSearch.source } }
|
||||||
.map {
|
.map {
|
||||||
"${it.source}:" + Json.encodeToString(
|
"${it.source}:" + Json.encodeToString(
|
||||||
JsonSavedSearch(
|
JsonSavedSearch(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user