diff --git a/src/en/allmovies/build.gradle b/src/en/allmovies/build.gradle index c57441ab4..85f3d3878 100644 --- a/src/en/allmovies/build.gradle +++ b/src/en/allmovies/build.gradle @@ -5,7 +5,7 @@ ext { extName = 'AllMovies' pkgNameSuffix = 'en.allmovies' extClass = '.AllMovies' - extVersionCode = 8 + extVersionCode = 9 libVersion = '12' } diff --git a/src/en/allmovies/src/eu/kanade/tachiyomi/animeextension/en/allmovies/AllMovies.kt b/src/en/allmovies/src/eu/kanade/tachiyomi/animeextension/en/allmovies/AllMovies.kt index 989f46072..ba066ad98 100644 --- a/src/en/allmovies/src/eu/kanade/tachiyomi/animeextension/en/allmovies/AllMovies.kt +++ b/src/en/allmovies/src/eu/kanade/tachiyomi/animeextension/en/allmovies/AllMovies.kt @@ -66,10 +66,9 @@ class AllMovies : ConfigurableAnimeSource, ParsedAnimeHttpSource() { val episodeList = mutableListOf() val seriesLink = document.select("link[rel=canonical]").attr("abs:href") if (seriesLink.contains("/series/")) { - val seasonUrl = seriesLink val seasonsHtml = client.newCall( GET( - seasonUrl, + seriesLink, headers = Headers.headersOf("Referer", document.location()) ) ).execute().asJsoup() @@ -79,45 +78,36 @@ class AllMovies : ConfigurableAnimeSource, ParsedAnimeHttpSource() { episodeList.addAll(seasonEpList) } } else { - val movieUrl = seriesLink val episode = SEpisode.create() episode.name = document.select("div.TPMvCn h1.Title").text() episode.episode_number = 1F - episode.setUrlWithoutDomain(movieUrl) + episode.setUrlWithoutDomain(seriesLink) episodeList.add(episode) } - return episodeList + return episodeList.reversed() } - override fun episodeFromElement(element: Element): SEpisode = throw Exception("not used") + override fun episodeFromElement(element: Element): SEpisode { + val episode = SEpisode.create() + episode.episode_number = element.select("td > span.Num").text().toFloat() + val seasonNum = element.ownerDocument().select("div.Title span").text() + episode.name = "Season $seasonNum" + "x" + element.select("td span.Num").text() + " : " + element.select("td.MvTbTtl > a").text() + episode.setUrlWithoutDomain(element.select("td.MvTbPly > a.ClA").attr("abs:href")) + return episode + } private fun parseEpisodesFromSeries(element: Element): List { val seasonId = element.attr("abs:href") - val seasonName = element.text() - val episodesUrl = seasonId - val episodesHtml = client.newCall( - GET( - episodesUrl, - ) - ).execute().asJsoup() + val episodesHtml = client.newCall(GET(seasonId)).execute().asJsoup() val episodeElements = episodesHtml.select("tr.Viewed") - return episodeElements.map { episodeFromElement(it, seasonName) } - } - - private fun episodeFromElement(element: Element, seasonName: String): SEpisode { - val episode = SEpisode.create() - episode.episode_number = element.select("td > span.Num").text().toFloat() - val SeasonNum = element.ownerDocument().select("div.Title span").text() - episode.name = "Season $SeasonNum" + "x" + element.select("td span.Num").text() + " : " + element.select("td.MvTbTtl > a").text() - episode.setUrlWithoutDomain(element.select("td.MvTbPly > a.ClA").attr("abs:href")) - return episode + return episodeElements.map { episodeFromElement(it) } } // Video urls override fun videoListRequest(episode: SEpisode): Request { val document = client.newCall(GET(baseUrl + episode.url)).execute().asJsoup() - val iframe = document.select("iframe[src^=\"/?trembed\"]").attr("abs:src") + val iframe = document.select("iframe[src*=/?trembed]").attr("abs:src") return GET(iframe) } @@ -147,13 +137,11 @@ class AllMovies : ConfigurableAnimeSource, ParsedAnimeHttpSource() { val data = script.data() val masterUrl = masterExtractor(data) val masterPlaylist = client.newCall(GET(masterUrl)).execute().body!!.string() - val videoList = mutableListOf