From 55520120fb8c1a5aef9dbec6fe45c6c713c0c96a Mon Sep 17 00:00:00 2001 From: Claudemirovsky <63046606+Claudemirovsky@users.noreply.github.com> Date: Wed, 17 May 2023 10:50:12 -0300 Subject: [PATCH] feat(multisrc/dooplay): Convert AnimeOnlineNinja(es) to multisrc (#1614) --- .../animeonline360/src/AnimeOnline360.kt | 6 - .../animeonlineninja/additional.gradle | 6 + .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3155 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1978 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4372 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 7072 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 9891 bytes .../animeonlineninja/src/AnimeOnlineNinja.kt | 260 ++++++++++ .../src/AnimeOnlineNinjaFilters.kt | 127 +++++ .../animeonlineninja/src}/VrfInterceptor.kt | 9 +- .../src}/extractors/UploadExtractor.kt | 16 +- .../tachiyomi/multisrc/dooplay/DooPlay.kt | 2 +- .../multisrc/dooplay/DooPlayGenerator.kt | 1 + src/es/animeonlineninja/AndroidManifest.xml | 2 - src/es/animeonlineninja/build.gradle | 19 - .../res/mipmap-hdpi/ic_launcher.png | Bin 124749 -> 0 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 124749 -> 0 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 124749 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 124749 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 124749 -> 0 bytes .../es/animeonlineninja/AnimeonlineNinja.kt | 460 ------------------ .../animeonlineninja/extractors/JsUnpacker.kt | 214 -------- .../extractors/SolidFilesExtractor.kt | 27 - 23 files changed, 408 insertions(+), 741 deletions(-) create mode 100644 multisrc/overrides/dooplay/animeonlineninja/additional.gradle create mode 100644 multisrc/overrides/dooplay/animeonlineninja/res/mipmap-hdpi/ic_launcher.png create mode 100644 multisrc/overrides/dooplay/animeonlineninja/res/mipmap-mdpi/ic_launcher.png create mode 100644 multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xhdpi/ic_launcher.png create mode 100644 multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 multisrc/overrides/dooplay/animeonlineninja/src/AnimeOnlineNinja.kt create mode 100644 multisrc/overrides/dooplay/animeonlineninja/src/AnimeOnlineNinjaFilters.kt rename {src/es/animeonlineninja/src/eu/kanade/tachiyomi/animeextension/es/animeonlineninja => multisrc/overrides/dooplay/animeonlineninja/src}/VrfInterceptor.kt (88%) rename {src/es/animeonlineninja/src/eu/kanade/tachiyomi/animeextension/es/animeonlineninja => multisrc/overrides/dooplay/animeonlineninja/src}/extractors/UploadExtractor.kt (51%) delete mode 100644 src/es/animeonlineninja/AndroidManifest.xml delete mode 100644 src/es/animeonlineninja/build.gradle delete mode 100644 src/es/animeonlineninja/res/mipmap-hdpi/ic_launcher.png delete mode 100644 src/es/animeonlineninja/res/mipmap-mdpi/ic_launcher.png delete mode 100644 src/es/animeonlineninja/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 src/es/animeonlineninja/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 src/es/animeonlineninja/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 src/es/animeonlineninja/src/eu/kanade/tachiyomi/animeextension/es/animeonlineninja/AnimeonlineNinja.kt delete mode 100644 src/es/animeonlineninja/src/eu/kanade/tachiyomi/animeextension/es/animeonlineninja/extractors/JsUnpacker.kt delete mode 100644 src/es/animeonlineninja/src/eu/kanade/tachiyomi/animeextension/es/animeonlineninja/extractors/SolidFilesExtractor.kt diff --git a/multisrc/overrides/dooplay/animeonline360/src/AnimeOnline360.kt b/multisrc/overrides/dooplay/animeonline360/src/AnimeOnline360.kt index 787e03add..1dd9e0bf4 100644 --- a/multisrc/overrides/dooplay/animeonline360/src/AnimeOnline360.kt +++ b/multisrc/overrides/dooplay/animeonline360/src/AnimeOnline360.kt @@ -124,12 +124,6 @@ class AnimeOnline360 : DooPlay( } // ============================= Utilities ============================== - - private fun String.toDate(): Long { - return runCatching { DATE_FORMATTER.parse(trim())?.time } - .getOrNull() ?: 0L - } - private fun String.addSubPrefix(): String { return if (this.contains(" dubbed", true)) { "[DUB] ${this.substringBefore(" Dubbed")}" diff --git a/multisrc/overrides/dooplay/animeonlineninja/additional.gradle b/multisrc/overrides/dooplay/animeonlineninja/additional.gradle new file mode 100644 index 000000000..11cfc1ad9 --- /dev/null +++ b/multisrc/overrides/dooplay/animeonlineninja/additional.gradle @@ -0,0 +1,6 @@ +dependencies { + implementation(project(':lib-streamtape-extractor')) + implementation(project(':lib-streamsb-extractor')) + implementation(project(':lib-dood-extractor')) + implementation(project(':lib-mixdrop-extractor')) +} diff --git a/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-hdpi/ic_launcher.png b/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..96334afa74dfe7802b59911051c96e64ec910326 GIT binary patch literal 3155 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 a2qL-@0|-|mnZ$oTeZbDz*{aFHKj}aAMUW-{ literal 0 HcmV?d00001 diff --git a/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-mdpi/ic_launcher.png b/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..a0fe394b5501fadb768a4f843aa07619a46baf8f GIT binary patch literal 1978 zcmZ`)X*|>m7yi$f!HlKs46+Sb!Uz##n?}=Q8M71_)eOdxY}s?w3?`rb(3B&!Lx+lH?SK;`4*g7} zJaZPlylXhMPL0aa0;xHBhc2>In8D2FtoA*FIZYl1{^W>@mK3(P$m-9Cz&4m7vv=In@B7Yi%0{@gT>t{XNQt z`m;+FQO1;hRma9K^JJ|g_aEQC_iv#GkK;CnINtBGEe{ga+vcV|z@v7$y^^$|lt%X@ zRp3_sAcuZ?geP+HSJ!45X09%^mUeZO^KV{oBz5PRtbEBBjGc`k_y!K7>`Gcqhx3v* z^+2VNKOJVH08KF2Si{s_`N6g0vYLOxUx%+%N>@rlz-w`iY4)EN9z_1)cKOGa_o@S2 z!zWT;G#daolnNV(fG4%6y}tMB9Imb7suNw&0^P#FVPc){Ri9Z z|79#;Af1bhH|8T41usIghHUuN;EQmw{dAsO-#NmR`<<=S2`I+kpQ4>+t%HMA%+ ziJlpDXnt_-x1sm8yohqy7jJHVd(LWjZk&La)f=pu&_K}_&Qz&S3Q~IS8|#|oX^ z`yY5AM#Dkj5KfmA<+G88sW$)MbO~&2_mqpn!3|>wC@6$*<_t zz~+q>xey@8ThFVG&;iVdU-pG`&NqlfuRLI?Y=N%xj}DH=63vw5KWQVrl~eLh}^5Ulb30m4ZmUEw-mmd?Lc+Ok2l zeeuL!k?FxwCt-}`zM~(5t3#JQRYZ>kVWr)qz7Ba1n!AeXCPzR{z;vztlBsjc$~c{A z7{6~E*Ti&%V&@ubrcS_njg0v4C+tH{*sB-XV|WRy^UtN?ag>FzJIqQz24Z+Ud#%vg z)pNxgb8GOG(+3kmO?r1vZb3(xEu^qyKH(T|gemaNq}*$z94PHNnZL~?ml$V+`~@fxQWUnko_hL4+Ud=@K}=t;9Dzja?aGj$CgXrw(wvAZ6MTW+ewE4p}P@gAMt#;-n* zNJ*SZGmzGm+nlGgmx)YbaR#FB5R>tLqpOqYU@Q4e>+;xfH|IhtCZaw}FUjwXa%M9>eRVy3qBiR6-K-BTb|D4( zA(w9ZV-z%QoK!4X*;BUlHW4JvGG?u5s@@0DK&$(byc;*M46hK9TI*pMU=uSCAznT~ z^@q*HLUiO_TSdQXzhrS?{+IE-vI_aaST)*#Z3|Qjf|Ecdm;)p4s&`v-+84^~_{Fbd zMq|fZ5otP+D@8X?BfcT@-m?4T3slzh<~VZyNzw?BbETslErd6QnToxIr|`Cz&zv`8_tc?RGN~WLr^H9*Kcjb{ ze$>ePNSv4uBDAMzs7xFyZkFN^=f{3@(;Ol^p5{+bSz8NcstW7KVX)0~_kVuc!Jg%| z%^Lw1Cbg8dDDo}+SXZCeKzc00F5nVF1i)d`VM|k#wW);-1!Zk#Axc{l6v_^TYTYUJ z`aeNQv^h?H1Lj~}z Kp4fT}E%kp|q-aq9 literal 0 HcmV?d00001 diff --git a/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xhdpi/ic_launcher.png b/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..6b22aaf8039242b0308b5922a553503ba88c50d0 GIT binary patch literal 4372 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 literal 0 HcmV?d00001 diff --git a/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xxhdpi/ic_launcher.png b/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..dd2707e3d82557dd5e3d4b684ce7d4b1455033ca GIT binary patch literal 7072 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 literal 0 HcmV?d00001 diff --git a/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xxxhdpi/ic_launcher.png b/multisrc/overrides/dooplay/animeonlineninja/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..479ea7fee78f0db88545bcdc53d531d0effb8333 GIT binary patch literal 9891 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 Tn6&w?atxp#qY7@2HV^wB!MoT$ literal 0 HcmV?d00001 diff --git a/multisrc/overrides/dooplay/animeonlineninja/src/AnimeOnlineNinja.kt b/multisrc/overrides/dooplay/animeonlineninja/src/AnimeOnlineNinja.kt new file mode 100644 index 000000000..82a25edf9 --- /dev/null +++ b/multisrc/overrides/dooplay/animeonlineninja/src/AnimeOnlineNinja.kt @@ -0,0 +1,260 @@ +package eu.kanade.tachiyomi.animeextension.es.animeonlineninja + +import androidx.preference.CheckBoxPreference +import androidx.preference.ListPreference +import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.animeextension.es.animeonlineninja.extractors.UploadExtractor +import eu.kanade.tachiyomi.animesource.model.AnimeFilterList +import eu.kanade.tachiyomi.animesource.model.Video +import eu.kanade.tachiyomi.lib.doodextractor.DoodExtractor +import eu.kanade.tachiyomi.lib.mixdropextractor.MixDropExtractor +import eu.kanade.tachiyomi.lib.streamsbextractor.StreamSBExtractor +import eu.kanade.tachiyomi.lib.streamtapeextractor.StreamTapeExtractor +import eu.kanade.tachiyomi.multisrc.dooplay.DooPlay +import eu.kanade.tachiyomi.network.GET +import eu.kanade.tachiyomi.util.asJsoup +import okhttp3.Request +import okhttp3.Response +import org.jsoup.nodes.Document +import org.jsoup.nodes.Element +import uy.kohesive.injekt.api.get + +class AnimeOnlineNinja : DooPlay( + "es", + "AnimeOnline.Ninja", + "https://www1.animeonline.ninja", +) { + override val client by lazy { + if (preferences.getBoolean(PREF_VRF_INTERCEPT_KEY, PREF_VRF_INTERCEPT_DEFAULT)) { + network.cloudflareClient + .newBuilder().addInterceptor(VrfInterceptor()).build() + } else { + network.cloudflareClient + } + } + + // ============================== Popular =============================== + override fun popularAnimeRequest(page: Int) = GET("$baseUrl/tendencias/$page") + + override fun popularAnimeSelector() = latestUpdatesSelector() + + override fun popularAnimeNextPageSelector() = latestUpdatesNextPageSelector() + + // =============================== Search =============================== + override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList): Request { + val params = AnimeOnlineNinjaFilters.getSearchParameters(filters) + val path = when { + params.genre.isNotBlank() -> { + if (params.genre in listOf("tendencias", "ratings")) { + "/" + params.genre + } else { + "/genero/${params.genre}" + } + } + params.language.isNotBlank() -> "/genero/${params.language}" + params.year.isNotBlank() -> "/release/${params.year}" + params.movie.isNotBlank() -> { + if (params.movie == "pelicula") { + "/pelicula" + } else { + "/genero/${params.movie}" + } + } + else -> buildString { + append( + when { + query.isNotBlank() -> "/?s=$query" + params.letter.isNotBlank() -> "/letra/${params.letter}/?" + else -> "/tendencias/?" + }, + ) + + append( + if (contains("tendencias")) { + "&get=${when (params.type){ + "serie" -> "TV" + "pelicula" -> "movies" + else -> "todos" + }}" + } else { + "&tipo=${params.type}" + }, + ) + + if (params.isInverted) append("&orden=asc") + } + } + + return if (path.startsWith("/?s=")) { + GET("$baseUrl/page/$page$path") + } else if (path.startsWith("/letra") || path.startsWith("/tendencias")) { + val before = path.substringBeforeLast("/") + val after = path.substringAfterLast("/") + GET(baseUrl + before + "/page/$page/" + after) + } else { + GET("$baseUrl$path/page/$page") + } + } + + // ============================== Episodes ============================== + override val episodeMovieText = "Película" + + // ============================ Video Links ============================= + override fun videoListParse(response: Response): List