Horis 2 лет назад
Родитель
Сommit
85de9a5bf8

+ 0 - 8
app/src/main/java/io/legado/app/data/entities/Book.kt

@@ -284,14 +284,6 @@ data class Book(
         }
     }
 
-    fun getBookSource(): BookSource? {
-        return appDb.bookSourceDao.getBookSource(origin)
-    }
-
-    fun isLocalModified(): Boolean {
-        return isLocal && LocalBook.getLastModified(this).getOrDefault(0L) > latestChapterTime
-    }
-
     fun toSearchBook() = SearchBook(
         name = name,
         author = author,

+ 19 - 2
app/src/main/java/io/legado/app/help/book/BookExtensions.kt

@@ -5,17 +5,26 @@ package io.legado.app.help.book
 import android.net.Uri
 import com.script.SimpleBindings
 import com.script.rhino.RhinoScriptEngine
-import io.legado.app.constant.*
+import io.legado.app.constant.AppLog
+import io.legado.app.constant.BookSourceType
+import io.legado.app.constant.BookType
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.BaseBook
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookSource
 import io.legado.app.exception.NoStackTraceException
 import io.legado.app.help.config.AppConfig
-import io.legado.app.utils.*
+import io.legado.app.model.localBook.LocalBook
+import io.legado.app.utils.FileDoc
+import io.legado.app.utils.exists
+import io.legado.app.utils.find
+import io.legado.app.utils.inputStream
+import io.legado.app.utils.isUri
+import io.legado.app.utils.toastOnUi
 import splitties.init.appCtx
 import java.io.File
 import java.util.concurrent.ConcurrentHashMap
+import kotlin.collections.set
 
 
 val Book.isAudio: Boolean
@@ -223,6 +232,14 @@ fun Book.sync(oldBook: Book) {
     canUpdate = curBook.canUpdate
 }
 
+fun Book.getBookSource(): BookSource? {
+    return appDb.bookSourceDao.getBookSource(origin)
+}
+
+fun Book.isLocalModified(): Boolean {
+    return isLocal && LocalBook.getLastModified(this).getOrDefault(0L) > latestChapterTime
+}
+
 fun Book.isSameNameAuthor(other: Any?): Boolean {
     if (other is BaseBook) {
         return name == other.name && author == other.author

+ 1 - 0
app/src/main/java/io/legado/app/model/AudioPlay.kt

@@ -11,6 +11,7 @@ import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookSource
 import io.legado.app.help.book.ContentProcessor
+import io.legado.app.help.book.getBookSource
 import io.legado.app.help.coroutine.Coroutine
 import io.legado.app.service.AudioPlayService
 import io.legado.app.utils.postEvent

+ 1 - 0
app/src/main/java/io/legado/app/ui/book/audio/AudioPlayViewModel.kt

@@ -11,6 +11,7 @@ import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.data.entities.BookSource
+import io.legado.app.help.book.getBookSource
 import io.legado.app.help.book.removeType
 import io.legado.app.model.AudioPlay
 import io.legado.app.model.AudioPlay.durChapter

+ 1 - 0
app/src/main/java/io/legado/app/ui/book/read/ReadBookViewModel.kt

@@ -20,6 +20,7 @@ import io.legado.app.help.AppWebDav
 import io.legado.app.help.book.BookHelp
 import io.legado.app.help.book.ContentProcessor
 import io.legado.app.help.book.isLocal
+import io.legado.app.help.book.isLocalModified
 import io.legado.app.help.book.removeType
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.coroutine.Coroutine

+ 1 - 0
app/src/main/java/io/legado/app/ui/book/read/page/provider/TextChapterLayout.kt

@@ -10,6 +10,7 @@ import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.help.book.BookContent
 import io.legado.app.help.book.BookHelp
+import io.legado.app.help.book.getBookSource
 import io.legado.app.help.config.AppConfig
 import io.legado.app.help.config.ReadBookConfig
 import io.legado.app.help.coroutine.Coroutine