diff --git a/app/src/main/java/exh/md/dto/AtHomeDto.kt b/app/src/main/java/exh/md/dto/AtHomeDto.kt index a215e2b12..247325af0 100644 --- a/app/src/main/java/exh/md/dto/AtHomeDto.kt +++ b/app/src/main/java/exh/md/dto/AtHomeDto.kt @@ -5,6 +5,14 @@ import kotlinx.serialization.Serializable @Serializable data class AtHomeDto( val baseUrl: String, + val chapter: AtHomeChapterDto, +) + +@Serializable +data class AtHomeChapterDto( + val hash: String, + val data: List, + val dataSaver: List, ) @Serializable diff --git a/app/src/main/java/exh/md/dto/ChapterDto.kt b/app/src/main/java/exh/md/dto/ChapterDto.kt index c4bba754d..8e18642e6 100644 --- a/app/src/main/java/exh/md/dto/ChapterDto.kt +++ b/app/src/main/java/exh/md/dto/ChapterDto.kt @@ -30,9 +30,6 @@ data class ChapterAttributesDto( val volume: String?, val chapter: String?, val translatedLanguage: String, - val hash: String, - val data: List, - val dataSaver: List, val externalUrl: String?, val version: Int, val createdAt: String, diff --git a/app/src/main/java/exh/md/handlers/PageHandler.kt b/app/src/main/java/exh/md/handlers/PageHandler.kt index 12f2294c6..491818e4e 100644 --- a/app/src/main/java/exh/md/handlers/PageHandler.kt +++ b/app/src/main/java/exh/md/handlers/PageHandler.kt @@ -9,7 +9,6 @@ import eu.kanade.tachiyomi.source.model.SChapter import eu.kanade.tachiyomi.util.lang.withIOContext import exh.log.xLogD import exh.md.dto.AtHomeDto -import exh.md.dto.ChapterDto import exh.md.service.MangaDexService import exh.md.utils.MdApi import exh.md.utils.MdUtil @@ -34,7 +33,7 @@ class PageHandler( return withIOContext { val chapterResponse = service.viewChapter(MdUtil.getChapterId(chapter.url)) - if (chapterResponse.data.attributes.externalUrl != null && chapterResponse.data.attributes.data.isEmpty()) { + if (chapterResponse.data.attributes.externalUrl != null) { when { chapter.scanlator.equals("mangaplus", true) -> mangaPlusHandler.fetchPageList( chapterResponse.data.attributes.externalUrl @@ -65,7 +64,7 @@ class PageHandler( val atHomeResponse = service.getAtHomeServer(atHomeRequestUrl, headers) - pageListParse(chapterResponse, atHomeRequestUrl, atHomeResponse, dataSaver) + pageListParse(atHomeRequestUrl, atHomeResponse, dataSaver) } } } @@ -85,16 +84,15 @@ class PageHandler( } private fun pageListParse( - chapterDto: ChapterDto, atHomeRequestUrl: String, atHomeDto: AtHomeDto, dataSaver: Boolean, ): List { - val hash = chapterDto.data.attributes.hash + val hash = atHomeDto.chapter.hash val pageArray = if (dataSaver) { - chapterDto.data.attributes.dataSaver.map { "/data-saver/$hash/$it" } + atHomeDto.chapter.dataSaver.map { "/data-saver/$hash/$it" } } else { - chapterDto.data.attributes.data.map { "/data/$hash/$it" } + atHomeDto.chapter.data.map { "/data/$hash/$it" } } val now = System.currentTimeMillis()