From c606822aa1fc6ab1e727c960eaed14857380049e Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 11 Mar 2025 22:19:00 +0800 Subject: [PATCH] src/de cineclix --- src/de/cineclix/build.gradle | 16 - .../cineclix/res/mipmap-hdpi/ic_launcher.png | Bin 2321 -> 0 bytes .../cineclix/res/mipmap-mdpi/ic_launcher.png | Bin 1417 -> 0 bytes .../cineclix/res/mipmap-xhdpi/ic_launcher.png | Bin 3476 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 6110 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 9381 -> 0 bytes .../animeextension/de/cineclix/CineClix.kt | 364 ------------------ .../cineclix/extractors/StreamVidExtractor.kt | 22 -- .../extractors/SuperVideoExtractor.kt | 22 -- 9 files changed, 424 deletions(-) delete mode 100644 src/de/cineclix/build.gradle delete mode 100644 src/de/cineclix/res/mipmap-hdpi/ic_launcher.png delete mode 100644 src/de/cineclix/res/mipmap-mdpi/ic_launcher.png delete mode 100644 src/de/cineclix/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 src/de/cineclix/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 src/de/cineclix/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 src/de/cineclix/src/eu/kanade/tachiyomi/animeextension/de/cineclix/CineClix.kt delete mode 100644 src/de/cineclix/src/eu/kanade/tachiyomi/animeextension/de/cineclix/extractors/StreamVidExtractor.kt delete mode 100644 src/de/cineclix/src/eu/kanade/tachiyomi/animeextension/de/cineclix/extractors/SuperVideoExtractor.kt diff --git a/src/de/cineclix/build.gradle b/src/de/cineclix/build.gradle deleted file mode 100644 index dbc4a7b2..00000000 --- a/src/de/cineclix/build.gradle +++ /dev/null @@ -1,16 +0,0 @@ -ext { - extName = 'CineClix' - extClass = '.CineClix' - extVersionCode = 18 -} - -apply from: "$rootDir/common.gradle" - -dependencies { - implementation(project(':lib:streamtape-extractor')) - implementation(project(':lib:mixdrop-extractor')) - implementation(project(':lib:dood-extractor')) - implementation(project(':lib:voe-extractor')) - implementation(project(':lib:playlist-utils')) - implementation(libs.jsunpacker) -} diff --git a/src/de/cineclix/res/mipmap-hdpi/ic_launcher.png b/src/de/cineclix/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index 743437f5a0feeee53be2da8ce0f300203751b736..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2321 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 XB~(I-o8@In00000NkvXXu0mjfe~hDf diff --git a/src/de/cineclix/res/mipmap-xhdpi/ic_launcher.png b/src/de/cineclix/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index a31b0ebd8b4b70c75d07ad5abe01597de0619068..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3476 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.getSharedPreferences("source_$id", 0x0000) - } - - private val json = Json { - isLenient = true - ignoreUnknownKeys = true - } - - override fun popularAnimeRequest(page: Int): Request = GET( - "$baseUrl/api/v1/channel/64?returnContentOnly=true&restriction=&order=rating:desc&paginate=simple&perPage=50&query=&page=$page", - headers = Headers.headersOf("referer", "$baseUrl/movies?order=rating%3Adesc"), - ) - - override fun popularAnimeParse(response: Response): AnimesPage { - val responseString = response.body.string() - return parsePopularAnimeJson(responseString) - } - - private fun parsePopularAnimeJson(jsonLine: String?): AnimesPage { - val jsonData = jsonLine ?: return AnimesPage(emptyList(), false) - val jObject = json.decodeFromString(jsonData) - val jO = jObject.jsonObject["pagination"]!!.jsonObject - val nextPage = jO.jsonObject["next_page"]!!.jsonPrimitive.int - // .substringAfter("page=").toInt() - val page = jO.jsonObject["current_page"]!!.jsonPrimitive.int - val hasNextPage = page < nextPage - val array = jO["data"]!!.jsonArray - val animeList = mutableListOf() - for (item in array) { - val anime = SAnime.create() - anime.title = item.jsonObject["name"]!!.jsonPrimitive.content - val animeId = item.jsonObject["id"]!!.jsonPrimitive.content - anime.setUrlWithoutDomain("$baseUrl/api/v1/titles/$animeId?load=images,genres,productionCountries,keywords,videos,primaryVideo,seasons,compactCredits") - anime.thumbnail_url = item.jsonObject["poster"]?.jsonPrimitive?.content ?: item.jsonObject["backdrop"]?.jsonPrimitive?.content - animeList.add(anime) - } - return AnimesPage(animeList, hasNextPage) - } - - // episodes - - override fun episodeListRequest(anime: SAnime): Request = GET(baseUrl + anime.url, headers = Headers.headersOf("referer", baseUrl)) - - override fun episodeListParse(response: Response): List { - val responseString = response.body.string() - val url = response.request.url.toString() - return parseEpisodeAnimeJson(responseString, url) - } - - private fun parseEpisodeAnimeJson(jsonLine: String?, url: String): List { - val jsonData = jsonLine ?: return emptyList() - val jObject = json.decodeFromString(jsonData) - val episodeList = mutableListOf() - val mId = jObject.jsonObject["title"]!!.jsonObject["id"]!!.jsonPrimitive.content - val season = jObject.jsonObject["seasons"]?.jsonObject - if (season != null) { - val dataArray = season.jsonObject["data"]!!.jsonArray - val next = season.jsonObject["next_page"]?.jsonPrimitive?.content - if (next != null) { - val seNextJsonData = client.newCall(GET("$baseUrl/api/v1/titles/$mId/seasons?perPage=8&query=&page=$next", headers = Headers.headersOf("referer", baseUrl))).execute().body.string() - val seNextJObject = json.decodeFromString(seNextJsonData) - val seasonNext = seNextJObject.jsonObject["pagination"]!!.jsonObject - val dataNextArray = seasonNext.jsonObject["data"]!!.jsonArray - val dataAllArray = dataArray.plus(dataNextArray) - for (item in dataAllArray) { - val id = item.jsonObject["title_id"]!!.jsonPrimitive.content - val num = item.jsonObject["number"]!!.jsonPrimitive.content - val seUrl = "$baseUrl/api/v1/titles/$id/seasons/$num?load=episodes,primaryVideo" - val seJsonData = client.newCall(GET(seUrl, headers = Headers.headersOf("referer", baseUrl))).execute().body.string() - val seJObject = json.decodeFromString(seJsonData) - val epObject = seJObject.jsonObject["episodes"]!!.jsonObject - val epDataArray = epObject.jsonObject["data"]!!.jsonArray.reversed() - for (epItem in epDataArray) { - val episode = SEpisode.create() - val seNum = epItem.jsonObject["season_number"]!!.jsonPrimitive.content - val epNum = epItem.jsonObject["episode_number"]!!.jsonPrimitive.content - episode.name = "Staffel $seNum Folge $epNum : " + epItem.jsonObject["name"]!!.jsonPrimitive.content - episode.episode_number = epNum.toFloat() - val epId = epItem.jsonObject["title_id"]!!.jsonPrimitive.content - episode.setUrlWithoutDomain("$baseUrl/api/v1/titles/$epId/seasons/$seNum/episodes/$epNum?load=videos,compactCredits,primaryVideo") - episodeList.add(episode) - } - } - } else { - for (item in dataArray) { - val id = item.jsonObject["title_id"]!!.jsonPrimitive.content - val num = item.jsonObject["number"]!!.jsonPrimitive.content - val seUrl = "$baseUrl/api/v1/titles/$id/seasons/$num?load=episodes,primaryVideo" - val seJsonData = client.newCall(GET(seUrl, headers = Headers.headersOf("referer", baseUrl))).execute().body.string() - val seJObject = json.decodeFromString(seJsonData) - val epObject = seJObject.jsonObject["episodes"]!!.jsonObject - val epDataArray = epObject.jsonObject["data"]!!.jsonArray.reversed() - for (epItem in epDataArray) { - val episode = SEpisode.create() - val seNum = epItem.jsonObject["season_number"]!!.jsonPrimitive.content - val epNum = epItem.jsonObject["episode_number"]!!.jsonPrimitive.content - episode.name = "Staffel $seNum Folge $epNum : " + epItem.jsonObject["name"]!!.jsonPrimitive.content - episode.episode_number = epNum.toFloat() - val epId = epItem.jsonObject["title_id"]!!.jsonPrimitive.content - episode.setUrlWithoutDomain("$baseUrl/api/v1/titles/$epId/seasons/$seNum/episodes/$epNum?load=videos,compactCredits,primaryVideo") - episodeList.add(episode) - } - } - } - } else { - val episode = SEpisode.create() - episode.episode_number = 1F - episode.name = "Film" - episode.setUrlWithoutDomain(url) - episodeList.add(episode) - } - return episodeList - } - - // Video Extractor - - override fun videoListRequest(episode: SEpisode): Request { - return GET(baseUrl + episode.url, headers = Headers.headersOf("referer", baseUrl)) - } - - override fun videoListParse(response: Response): List