This commit is contained in:
kunfei 2022-05-10 08:23:59 +08:00
parent a50e73ef4e
commit e33a6cbe1b
3 changed files with 3 additions and 25 deletions

View File

@ -24,6 +24,7 @@ import io.legado.app.lib.dialogs.alert
import io.legado.app.lib.theme.backgroundColor
import io.legado.app.lib.theme.primaryColor
import io.legado.app.model.ReadBook
import io.legado.app.ui.association.ImportTxtTocRuleDialog
import io.legado.app.ui.widget.recycler.ItemTouchCallback
import io.legado.app.ui.widget.recycler.VerticalDivider
import io.legado.app.utils.*
@ -153,9 +154,7 @@ class TocRegexDialog() : BaseDialogFragment(R.layout.dialog_toc_regex),
cacheUrls.add(0, it)
aCache.put(importTocRuleKey, cacheUrls.joinToString(","))
}
viewModel.importOnLine(it) { msg ->
toastOnUi(msg)
}
showDialogFragment(ImportTxtTocRuleDialog(it))
}
}
cancelButton()

View File

@ -5,11 +5,6 @@ import io.legado.app.base.BaseViewModel
import io.legado.app.data.appDb
import io.legado.app.data.entities.TxtTocRule
import io.legado.app.help.DefaultData
import io.legado.app.help.http.newCallResponseBody
import io.legado.app.help.http.okHttpClient
import io.legado.app.help.http.text
import io.legado.app.utils.GSON
import io.legado.app.utils.fromJsonArray
class TocRegexViewModel(application: Application) : BaseViewModel(application) {
@ -28,20 +23,4 @@ class TocRegexViewModel(application: Application) : BaseViewModel(application) {
}
}
fun importOnLine(url: String, finally: (msg: String) -> Unit) {
execute {
okHttpClient.newCallResponseBody {
url(url)
}.text("utf-8").let { json ->
GSON.fromJsonArray<TxtTocRule>(json).getOrThrow()?.let {
appDb.txtTocRuleDao.insert(*it.toTypedArray())
}
}
}.onSuccess {
finally("导入成功")
}.onError {
finally("导入失败\n${it.localizedMessage}")
}
}
}

View File

@ -183,7 +183,7 @@ abstract class PageDelegate(protected val readView: ReadView) {
}
open fun onDestroy() {
// run on destroy
}
}