pull/2026/head
kunfei 3 years ago
parent 124f8867ae
commit ccdcd7c2f3
  1. 33
      app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt

@ -685,43 +685,36 @@ class AnalyzeRule(
}
/**
* 更新BookUrl,如果搜索结果有tocUrl也会更新,有些书源bookUrl定期更新,可以在js内调用更新
* 重新获取book
*/
fun refreshBookUrl() {
runBlocking {
fun reGetBook() {
val bookSource = source as? BookSource
val book = book as? Book
if (bookSource == null || book == null) return@runBlocking
val books = WebBook.searchBookAwait(this, bookSource, book.name)
books.forEach {
if (it.name == book.name && it.author == book.author) {
if (bookSource == null || book == null) return
runBlocking {
withTimeout(1800000) {
WebBook.preciseSearchAwait(this, bookSource, book.name, book.author)
.getOrThrow().let {
book.bookUrl = it.bookUrl
if (it.tocUrl.isNotBlank()) {
book.tocUrl = it.tocUrl
it.variableMap.forEach { entry ->
book.putVariable(entry.key, entry.value)
}
return@runBlocking
}
WebBook.getBookInfoAwait(this, bookSource, book, false)
}
}
}
/**
* 重新获取book
* 刷新详情页
*/
fun reGetBook() {
fun refreshBook() {
val bookSource = source as? BookSource
val book = book as? Book
if (bookSource == null || book == null) return
runBlocking {
withTimeout(1800000) {
WebBook.preciseSearchAwait(this, bookSource, book.name, book.author)
.getOrThrow().let {
book.bookUrl = it.bookUrl
it.variableMap.forEach { entry ->
book.putVariable(entry.key, entry.value)
}
}
WebBook.getBookInfoAwait(this, bookSource, book, false)
WebBook.getBookInfoAwait(this, bookSource, book)
}
}
}

Loading…
Cancel
Save