diff --git a/src/en/mangarock/build.gradle b/src/en/mangarock/build.gradle index c7442d357..21e3c13dc 100644 --- a/src/en/mangarock/build.gradle +++ b/src/en/mangarock/build.gradle @@ -5,7 +5,7 @@ ext { appName = 'Tachiyomi: Manga Rock' pkgNameSuffix = 'en.mangarock' extClass = '.MangaRock' - extVersionCode = 9 + extVersionCode = 10 libVersion = '1.2' } diff --git a/src/en/mangarock/src/eu/kanade/tachiyomi/extension/en/mangarock/MangaRock.kt b/src/en/mangarock/src/eu/kanade/tachiyomi/extension/en/mangarock/MangaRock.kt index d991e57c3..c7532a382 100644 --- a/src/en/mangarock/src/eu/kanade/tachiyomi/extension/en/mangarock/MangaRock.kt +++ b/src/en/mangarock/src/eu/kanade/tachiyomi/extension/en/mangarock/MangaRock.kt @@ -172,17 +172,27 @@ class MangaRock : HttpSource() { } } + // Always returns the "real" URL for the "Open in browser" action + override fun mangaDetailsRequest(manga: SManga): Request { + // Handle older entries with API URL ("/info?oid=mrs-series-...") + if (manga.url.startsWith("/info")) { + val oid = manga.url.substringAfterLast("=") + return GET("$baseUrl/manga/$oid", headers) + } + + return super.mangaDetailsRequest(manga) + } + override fun chapterListRequest(manga: SManga) = getMangaApiRequest(manga) private fun getMangaApiRequest(manga: SManga): Request { - return if (manga.url.contains("manga")) { - // Entries with "real" URL - val oid = manga.url.substringAfterLast("/") - GET("$apiUrl/info?oid=$oid", headers) - } else { - // Older entries with API URL - GET(apiUrl + manga.url, headers) + // Handle older entries with API URL ("/info?oid=mrs-series-...") + if (manga.url.startsWith("/info")) { + return GET(apiUrl + manga.url, headers) } + + val oid = manga.url.substringAfterLast("/") + return GET("$apiUrl/info?oid=$oid", headers) } override fun mangaDetailsParse(response: Response) = SManga.create().apply {