Add Data saver to MangaPlus

This commit is contained in:
Jobobby04 2023-04-15 23:22:04 -04:00
parent 4f134f90ce
commit 7155b2be10
2 changed files with 12 additions and 4 deletions

View File

@ -34,12 +34,12 @@ class MangaPlusHandler(currentClient: OkHttpClient) {
.rateLimitHost(WEB_URL.toHttpUrl(), 2) .rateLimitHost(WEB_URL.toHttpUrl(), 2)
.build() .build()
suspend fun fetchPageList(chapterId: String): List<Page> { suspend fun fetchPageList(chapterId: String, dataSaver: Boolean): List<Page> {
val response = client.newCall(pageListRequest(chapterId.substringAfterLast("/"))).awaitSuccess() val response = client.newCall(pageListRequest(chapterId.substringAfterLast("/"), dataSaver)).awaitSuccess()
return pageListParse(response) return pageListParse(response)
} }
private fun pageListRequest(chapterId: String): Request { private fun pageListRequest(chapterId: String, dataSaver: Boolean): Request {
val newHeaders = headers.newBuilder() val newHeaders = headers.newBuilder()
.set("Referer", "$WEB_URL/viewer/$chapterId") .set("Referer", "$WEB_URL/viewer/$chapterId")
.build() .build()
@ -47,7 +47,14 @@ class MangaPlusHandler(currentClient: OkHttpClient) {
val url = "$API_URL/manga_viewer".toHttpUrl().newBuilder() val url = "$API_URL/manga_viewer".toHttpUrl().newBuilder()
.addQueryParameter("chapter_id", chapterId) .addQueryParameter("chapter_id", chapterId)
.addQueryParameter("split", "yes") .addQueryParameter("split", "yes")
.addQueryParameter("img_quality", "super_high") .addQueryParameter(
"img_quality",
if (dataSaver) {
"low"
} else {
"super_high"
},
)
.addQueryParameter("format", "json") .addQueryParameter("format", "json")
.toString() .toString()

View File

@ -39,6 +39,7 @@ class PageHandler(
when { when {
chapter.scanlator.equals("mangaplus", true) -> mangaPlusHandler.fetchPageList( chapter.scanlator.equals("mangaplus", true) -> mangaPlusHandler.fetchPageList(
chapterResponse.data.attributes.externalUrl, chapterResponse.data.attributes.externalUrl,
dataSaver = dataSaver,
) )
/*chapter.scanlator.equals("comikey", true) -> comikeyHandler.fetchPageList( /*chapter.scanlator.equals("comikey", true) -> comikeyHandler.fetchPageList(
chapterResponse.data.attributes.externalUrl chapterResponse.data.attributes.externalUrl