HuntersScans: Fix chapter list (#9809)
* Fix chapter list * Remove the extra request and the mutable list * Use a simple loop to retrieve the chapter page
This commit is contained in:
parent
9183d5e2d0
commit
d4fb412f9e
@ -3,7 +3,7 @@ ext {
|
|||||||
extClass = '.HuntersScans'
|
extClass = '.HuntersScans'
|
||||||
themePkg = 'madara'
|
themePkg = 'madara'
|
||||||
baseUrl = 'https://readhunters.xyz'
|
baseUrl = 'https://readhunters.xyz'
|
||||||
overrideVersionCode = 7
|
overrideVersionCode = 8
|
||||||
isNsfw = true
|
isNsfw = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
package eu.kanade.tachiyomi.extension.pt.huntersscans
|
package eu.kanade.tachiyomi.extension.pt.huntersscans
|
||||||
|
|
||||||
import eu.kanade.tachiyomi.multisrc.madara.Madara
|
import eu.kanade.tachiyomi.multisrc.madara.Madara
|
||||||
|
import eu.kanade.tachiyomi.network.POST
|
||||||
import eu.kanade.tachiyomi.network.interceptor.rateLimit
|
import eu.kanade.tachiyomi.network.interceptor.rateLimit
|
||||||
|
import eu.kanade.tachiyomi.source.model.SChapter
|
||||||
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
|
import rx.Observable
|
||||||
import java.text.SimpleDateFormat
|
import java.text.SimpleDateFormat
|
||||||
import java.util.Locale
|
import java.util.Locale
|
||||||
import java.util.concurrent.TimeUnit
|
import java.util.concurrent.TimeUnit
|
||||||
@ -21,5 +26,24 @@ class HuntersScans : Madara(
|
|||||||
|
|
||||||
override val useLoadMoreRequest = LoadMoreStrategy.Always
|
override val useLoadMoreRequest = LoadMoreStrategy.Always
|
||||||
|
|
||||||
override val useNewChapterEndpoint = true
|
override fun fetchChapterList(manga: SManga): Observable<List<SChapter>> =
|
||||||
|
Observable.fromCallable { fetchAllChapters(manga) }
|
||||||
|
|
||||||
|
private fun fetchAllChapters(manga: SManga): List<SChapter> {
|
||||||
|
val chapters = mutableListOf<SChapter>()
|
||||||
|
var page = 1
|
||||||
|
while (true) {
|
||||||
|
val document = client.newCall(POST("${getMangaUrl(manga)}ajax/chapters?t=${page++}", xhrHeaders))
|
||||||
|
.execute()
|
||||||
|
.asJsoup()
|
||||||
|
val currentPage = document.select(chapterListSelector())
|
||||||
|
.map(::chapterFromElement)
|
||||||
|
|
||||||
|
chapters += currentPage
|
||||||
|
|
||||||
|
if (currentPage.isEmpty()) {
|
||||||
|
return chapters
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user