Chapter Metadata update (#1257)

* change chapter update to refresh on any metadata change

* moved check into private function
This commit is contained in:
Carlos 2018-02-18 13:20:05 -05:00 committed by inorichi
parent 0d480dbf7c
commit 9194dc0161

View File

@ -49,13 +49,16 @@ fun syncChaptersWithSource(db: DatabaseHelper,
// Add the chapter if not in db already, or update if the metadata changed.
if (dbChapter == null) {
toAdd.add(sourceChapter)
} else if (dbChapter.scanlator != sourceChapter.scanlator ||
dbChapter.name != sourceChapter.name) {
dbChapter.scanlator = sourceChapter.scanlator
dbChapter.name = sourceChapter.name
toChange.add(dbChapter)
} else {
//this forces metadata update for the main viewable things in the chapter list
ChapterRecognition.parseChapterNumber(sourceChapter, manga)
if (shouldUpdateDbChapter(dbChapter, sourceChapter)) {
dbChapter.scanlator = sourceChapter.scanlator
dbChapter.name = sourceChapter.name
dbChapter.date_upload = sourceChapter.date_upload
dbChapter.chapter_number = sourceChapter.chapter_number
toChange.add(dbChapter)
}
}
}
@ -123,3 +126,10 @@ fun syncChaptersWithSource(db: DatabaseHelper,
return Pair(toAdd.subtract(readded).toList(), toDelete.subtract(readded).toList())
}
//checks if the chapter in db needs updated
private fun shouldUpdateDbChapter(dbChapter: Chapter, sourceChapter: SChapter): Boolean {
return dbChapter.scanlator != sourceChapter.scanlator || dbChapter.name != sourceChapter.name ||
dbChapter.date_upload != sourceChapter.date_upload ||
dbChapter.chapter_number != sourceChapter.chapter_number
}