Retry button now uses a different H@H server.
This commit is contained in:
parent
fa115ed9a0
commit
77cd459c51
@ -245,18 +245,27 @@ class EHentai(override val id: Long,
|
||||
override fun pageListParse(response: Response)
|
||||
= throw UnsupportedOperationException("Unused method was called somehow!")
|
||||
|
||||
override fun imageUrlParse(response: Response): String {
|
||||
override fun fetchImageUrl(page: Page): Observable<String> {
|
||||
return client.newCall(imageUrlRequest(page))
|
||||
.asObservableSuccess()
|
||||
.map { realImageUrlParse(it, page) }
|
||||
}
|
||||
|
||||
fun realImageUrlParse(response: Response, page: Page): String {
|
||||
with(response.asJsoup()) {
|
||||
val currentImage = select("img[onerror]").attr("src")
|
||||
//TODO This doesn't work currently. Find a better way to do this
|
||||
val currentImage = getElementById("img").attr("src")
|
||||
//Each press of the retry button will choose another server
|
||||
// select("#loadfail").attr("onclick").nullIfBlank()?.let {
|
||||
// page.url = addParam(page.url, "nl", it.substring(it.indexOf('\'') + 1 .. it.lastIndexOf('\'') - 1))
|
||||
// }
|
||||
select("#loadfail").attr("onclick").nullIfBlank()?.let {
|
||||
page.url = addParam(page.url, "nl", it.substring(it.indexOf('\'') + 1 .. it.lastIndexOf('\'') - 1))
|
||||
}
|
||||
return currentImage
|
||||
}
|
||||
}
|
||||
|
||||
override fun imageUrlParse(response: Response): String {
|
||||
throw UnsupportedOperationException("Unused method was called somehow!")
|
||||
}
|
||||
|
||||
val cookiesHeader by lazy {
|
||||
val cookies: MutableMap<String, String> = mutableMapOf()
|
||||
if(prefs.enableExhentai().getOrDefault()) {
|
||||
|
@ -18,6 +18,7 @@ import eu.kanade.tachiyomi.source.LocalSource
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
import eu.kanade.tachiyomi.source.model.Page
|
||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||
import eu.kanade.tachiyomi.source.online.all.EHentai
|
||||
import eu.kanade.tachiyomi.ui.base.presenter.BasePresenter
|
||||
import eu.kanade.tachiyomi.util.DiskUtil
|
||||
import eu.kanade.tachiyomi.util.RetryWithDelay
|
||||
@ -354,6 +355,11 @@ class ReaderPresenter : BasePresenter<ReaderActivity>() {
|
||||
if (uri != null && !page.chapter.isDownloaded) {
|
||||
chapterCache.removeFileFromCache(uri.encodedPath.substringAfterLast('/'))
|
||||
}
|
||||
|
||||
//If we are using EHentai/ExHentai, get a new image URL
|
||||
if(source is EHentai)
|
||||
page.imageUrl = null
|
||||
|
||||
loader.retryPage(page)
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user