diff --git a/src/all/kavita/build.gradle b/src/all/kavita/build.gradle index 19b41149..ea324481 100644 --- a/src/all/kavita/build.gradle +++ b/src/all/kavita/build.gradle @@ -2,7 +2,7 @@ ext { kmkVersionCode = 1 extName = 'Kavita' extClass = '.KavitaFactory' - extVersionCode = 30 + extVersionCode = 31 isNsfw = false } diff --git a/src/all/kavita/src/eu/kanade/tachiyomi/extension/all/kavita/Kavita.kt b/src/all/kavita/src/eu/kanade/tachiyomi/extension/all/kavita/Kavita.kt index f645e763..50449296 100644 --- a/src/all/kavita/src/eu/kanade/tachiyomi/extension/all/kavita/Kavita.kt +++ b/src/all/kavita/src/eu/kanade/tachiyomi/extension/all/kavita/Kavita.kt @@ -81,6 +81,7 @@ import uy.kohesive.injekt.Injekt import uy.kohesive.injekt.api.get import uy.kohesive.injekt.injectLazy import java.io.IOException +import java.net.URLEncoder import java.security.MessageDigest import java.util.Calendar import java.util.Locale @@ -1814,7 +1815,9 @@ class Kavita(private val suffix: String = "") : ConfigurableSource, UnmeteredSou .equals("true", ignoreCase = true) private fun readerImageUrl(chapterId: Any, page: Int, extractPdf: Boolean): String = - "$apiUrl/Reader/image?chapterId=$chapterId&page=$page&extractPdf=$extractPdf&saveProgress=true&apiKey=$apiKey" + "$apiUrl/Reader/image?chapterId=$chapterId&page=$page&extractPdf=$extractPdf&saveProgress=true&apiKey=$apiKey&kavitaClient=${urlEncode(kavitaClientHeader())}&deviceId=${urlEncode(deviceFingerprint())}" + + private fun urlEncode(value: String): String = URLEncoder.encode(value, "UTF-8") private fun readerPage(index: Int, chapterId: Any, page: Int = index, extractPdf: Boolean = false): Page { val imageUrl = readerImageUrl(chapterId, page, extractPdf)