From d3202833375211780ef2207bf9e1d9cd28d4b90e Mon Sep 17 00:00:00 2001 From: Secozzi <49240133+Secozzi@users.noreply.github.com> Date: Thu, 12 Jan 2023 09:29:56 +0100 Subject: [PATCH] Add extension (#1158) --- src/it/aniplay/AndroidManifest.xml | 2 + src/it/aniplay/build.gradle | 13 + .../aniplay/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2577 bytes .../aniplay/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1489 bytes .../aniplay/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 3397 bytes .../aniplay/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 5949 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 8515 bytes src/it/aniplay/res/web_hi_res_512.png | Bin 0 -> 36487 bytes .../animeextension/it/aniplay/AniPlay.kt | 343 +++++++++++ .../it/aniplay/AniPlayFilters.kt | 574 ++++++++++++++++++ 10 files changed, 932 insertions(+) create mode 100644 src/it/aniplay/AndroidManifest.xml create mode 100644 src/it/aniplay/build.gradle create mode 100644 src/it/aniplay/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/it/aniplay/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/it/aniplay/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/it/aniplay/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/it/aniplay/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/it/aniplay/res/web_hi_res_512.png create mode 100644 src/it/aniplay/src/eu/kanade/tachiyomi/animeextension/it/aniplay/AniPlay.kt create mode 100644 src/it/aniplay/src/eu/kanade/tachiyomi/animeextension/it/aniplay/AniPlayFilters.kt diff --git a/src/it/aniplay/AndroidManifest.xml b/src/it/aniplay/AndroidManifest.xml new file mode 100644 index 000000000..acb4de356 --- /dev/null +++ b/src/it/aniplay/AndroidManifest.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/src/it/aniplay/build.gradle b/src/it/aniplay/build.gradle new file mode 100644 index 000000000..9b84e525a --- /dev/null +++ b/src/it/aniplay/build.gradle @@ -0,0 +1,13 @@ +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' +apply plugin: 'kotlinx-serialization' + +ext { + extName = 'AniPlay' + pkgNameSuffix = 'it.aniplay' + extClass = '.AniPlay' + extVersionCode = 1 + libVersion = '13' +} + +apply from: "$rootDir/common.gradle" diff --git a/src/it/aniplay/res/mipmap-hdpi/ic_launcher.png b/src/it/aniplay/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..6a096f5b3a5270c96c313082aaf2325526e193ae GIT binary patch literal 2577 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 literal 0 HcmV?d00001 diff --git a/src/it/aniplay/res/mipmap-mdpi/ic_launcher.png b/src/it/aniplay/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..1768c995650e6d37187b73238281f8fe3c081ac3 GIT binary patch literal 1489 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 literal 0 HcmV?d00001 diff --git a/src/it/aniplay/res/mipmap-xxhdpi/ic_launcher.png b/src/it/aniplay/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..946df9ec0bb5df7758aec74e319479215d6ddefc GIT binary patch literal 5949 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⩛v>0z@%Ka1iYZO*CDvUcK}K%I@8}OK_v`S~5mg&p-dX-ej}*yJM2^ zjznA&0&XdRRm}oP0OTVK?DvD2-_XYpurN!PF4Yr(nAiE`mtU+8J$>5Cxk+s0+phcE zQ8foph!BwXlv7R#1_tJ!d5P;yW zX3w6jCj-C!`fIDZa+#-bQJk&sq1Rp7P%{A8gyGuRxN>{|f`!5Mba*TDgAYEi?n*BO zj*I28$;)=#Ri3E@NV0=2WpM%8vSo|@!t?m?_%6nJCwJwdco)Ul`V)HHr46<;RdZpa zNU>3vO^{I`xB!ImFc}D|^TZQRs09laXmDKXaZQ(`99tQo*KJ_9Uav`jY{E_nqsBEg%tzT(9ob@bw-aKtv@J-dO3A-(z=coOQo~bW4rDO zF(+Ns0V-FglSW|%AS~v>EHd^b#49wLH*aFW!bK~xIJ5cLasLpfLw%ZgoI~d_uY4&{;t=&dGnkt z4hK?Kh1l9{yIyU0su}}@SRfa{#wiht;$eO8B^}NYQm4;I&80qs14YHs%%&qN74_QH0M> z*+=lMZE;EGlE$ZvzImDzKq0~n$s6jjT!Z0qwb2)zss_=L7AQopA$cnWjw@gxAo%93 zISVAAaEUVF1kNejC9O*uU*${Ws|kRlgeX-`C_Jw1a7`xxf^QkA1V~zN(&dE&->z+O zP3Nn4seDxfsBhoCsT_rI1?#G4>2%z7mMeX;0?1WK62j!v<(k$tokaVk%BXpODlK$w zeJ<%;(nu*>x}2H1oU~F3mo6t&0HsNw+_scE zy|m(`%Bvbcv^jTKM`6AK;)1}LCH5)Xw;z?tmjOhQ_Ejt=A17_4lrK?Fr2xWqsQ8p| zD>~cK*`asu-v6SV!8%KHBBTr-#d7j+(uVY-N_qDZKz*q020G~**J=-)_&7vl_*h8f{E}=l5GJNt#^|>15P=6a~uYfN$ZQAr_dN~367Q+Go zAo}`(ZsmKzc|08G1{io39|Gl;>NHZ$97trXe4_^1X@P=KXI1 z=%3Uc#6Jk25&sx~oSMmrfeb)^2yqas5cbqOud<+>yu;qWqA&B8{(JAq~{`O$5&Z`ZU#4ig)G_ zKpP6+z-<8@6Z@FqyHot*1CYrBD`Z?5;vqnUmLdB@M&VV(N`!y1_%R)0R|x9cLSCIEd!{s0HL<11;X#f0!2Z>|DtZo*>y<(WT1#z zBLEe3UHIErIbUm6dC@nI8VwBiX{?a3G|`{YbnKo>C>3RxGaB=E zn9Tp8){0%J1VB-17PU6fvL)+bck&3%5OqnVfML6=Vp*0$u^Bk&BeoPM!SG~(ZTb{l zb1f=|1*$nAWDWM0Kn9S%?6RDZA$BH=OafjK$SjbT*s@H~p?4;YOak5#$Sjbz=(3F2 fFg{}-SOWhKWxgrQL#zQt00000NkvXXu0mjfnFn}T literal 0 HcmV?d00001 diff --git a/src/it/aniplay/res/mipmap-xxxhdpi/ic_launcher.png b/src/it/aniplay/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..45cd555fa3b7bf9c4601632790f88d526f58cccf GIT binary patch literal 8515 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
Nc%Y#o&^i!*Z*zf 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.getSharedPreferences("source_$id", 0x0000) + } + + // ============================== Popular =============================== + + override fun popularAnimeParse(response: Response): AnimesPage { + return searchAnimeParse(response) + } + + override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/api/anime/advanced-similar-search?page=${page - 1}&size=36&sort=views,desc&sort=id") + + // =============================== Latest =============================== + + override fun latestUpdatesRequest(page: Int): Request = throw Exception("not used") + + override fun latestUpdatesParse(response: Response): AnimesPage = throw Exception("not used") + + // =============================== Search =============================== + + override fun fetchSearchAnime(page: Int, query: String, filters: AnimeFilterList): Observable { + val params = AniPlayFilters.getSearchParameters(filters) + return client.newCall(searchAnimeRequest(page, query, params)) + .asObservableSuccess() + .map { response -> + searchAnimeParse(response) + } + } + + override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList): Request = throw Exception("Not used") + + private fun searchAnimeRequest(page: Int, query: String, filters: AniPlayFilters.FilterSearchParams): Request { + if ((filters.anni.isNotEmpty() && filters.stagione.isEmpty()) || + (filters.anni.isEmpty() && filters.stagione.isNotEmpty()) + ) { + throw Exception("Per gli anime stagionali, seleziona sia l'anno che la stagione") + } + + val url = if (filters.anni.isNotEmpty()) { + "$baseUrl/api/seasonal-view".toHttpUrlOrNull()!!.newBuilder() + .addPathSegment("${filters.stagione}-${filters.anni}") + .addQueryParameter("page", (page - 1).toString()) + .addQueryParameter("size", "36") + .addQueryParameter("sort", filters.ordina) + .addQueryParameter("sort", "id") + } else { + "$baseUrl/api/anime/advanced-similar-search".toHttpUrlOrNull()!!.newBuilder() + .addQueryParameter("page", (page - 1).toString()) + .addQueryParameter("size", "36") + .addQueryParameter("sort", filters.ordina) + .addQueryParameter("sort", "id") + .addIfNotBlank("query", query) + .addIfNotBlank("genreIds", filters.genere) + .addIfNotBlank("typeIds", filters.tipologia) + .addIfNotBlank("statusIds", filters.stato) + .addIfNotBlank("originIds", filters.origine) + .addIfNotBlank("studioIds", filters.studio) + .addIfNotBlank("startYear", filters.inizio) + .addIfNotBlank("endYear", filters.fine) + } + + return GET(url.build().toString()) + } + + override fun searchAnimeParse(response: Response): AnimesPage { + val parsed = json.decodeFromString>(response.body!!.string()) + + val animeList = parsed.map { ani -> + SAnime.create().apply { + title = ani.title + if (ani.verticalImages.isNotEmpty()) { + thumbnail_url = ani.verticalImages.first().imageFull + } + url = ani.id.toString() + description = ani.storyline + } + } + + return AnimesPage(animeList, animeList.size == 36) + } + + override fun getFilterList(): AnimeFilterList = AniPlayFilters.filterList + + // =========================== Anime Details ============================ + + override fun animeDetailsRequest(anime: SAnime): Request { + return GET("$baseUrl/api/anime/${anime.url}") + } + + override fun animeDetailsParse(response: Response): SAnime { + val detailsJson = json.decodeFromString(response.body!!.string()) + val anime = SAnime.create() + + anime.title = detailsJson.title + anime.author = detailsJson.studio + anime.status = parseStatus(detailsJson.status) + + var description = detailsJson.storyline + "\n" + description += "\nTipologia: ${detailsJson.type}" + description += "\nOrigine: ${detailsJson.origin}" + if (detailsJson.startDate != null) description += "\nData di inizio: ${detailsJson.startDate}" + description += "\nStato: ${detailsJson.status}" + + anime.description = description + + return anime + } + + // ============================== Episodes ============================== + + override fun episodeListRequest(anime: SAnime): Request { + return GET("$baseUrl/api/anime/${anime.url}") + } + + override fun episodeListParse(response: Response): List { + val animeJson = json.decodeFromString(response.body!!.string()) + val episodeList = mutableListOf() + + if (animeJson.seasons.isNotEmpty()) { + for (season in animeJson.seasons) { + val episodesResponse = client.newCall( + GET("$baseUrl/api/anime/${animeJson.id}/season/${season.id}") + ).execute() + val episodesJson = json.decodeFromString>(episodesResponse.body!!.string()) + + for (ep in episodesJson) { + val episode = SEpisode.create() + + episode.name = "Episode ${ep.episodeNumber.toIntOrNull() ?: (ep.episodeNumber.toFloatOrNull() ?: 1)} ${ep.title ?: ""}" + episode.episode_number = ep.episodeNumber.toFloatOrNull() ?: 0F + + if (ep.airingDate != null) episode.date_upload = SimpleDateFormat("yyyy-MM-dd", Locale.ITALY).parse(ep.airingDate)!!.time + + episode.url = ep.id.toString() + + episodeList.add(episode) + } + } + } else if (animeJson.episodes.isNotEmpty()) { + for (ep in animeJson.episodes) { + val episode = SEpisode.create() + episode.name = "Episode ${ep.episodeNumber.toIntOrNull() ?: (ep.episodeNumber.toFloatOrNull() ?: 1)} ${ep.title ?: ""}" + episode.episode_number = ep.episodeNumber.toFloatOrNull() ?: 0F + + if (ep.airingDate != null) episode.date_upload = SimpleDateFormat("yyyy-MM-dd", Locale.ITALY).parse(ep.airingDate)!!.time + + episode.url = ep.id.toString() + + episodeList.add(episode) + } + } else {} + + return episodeList.sortedBy { it.episode_number }.reversed() + } + + // ============================ Video Links ============================= + + override fun videoListRequest(episode: SEpisode): Request { + return GET("$baseUrl/api/episode/${episode.url}") + } + + override fun videoListParse(response: Response): List