From 49334110356d0b6841f143d79ded3984d6d46b85 Mon Sep 17 00:00:00 2001 From: WebDitto <webditto@proton.me> Date: Sun, 16 Feb 2025 19:26:18 -0300 Subject: [PATCH] fix(src/pt): Removed dead sources (#681) --- src/pt/animestc/AndroidManifest.xml | 23 - src/pt/animestc/build.gradle | 11 - .../animestc/res/mipmap-hdpi/ic_launcher.png | Bin 4538 -> 0 bytes .../animestc/res/mipmap-mdpi/ic_launcher.png | Bin 2938 -> 0 bytes .../animestc/res/mipmap-xhdpi/ic_launcher.png | Bin 6086 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 9160 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 12389 -> 0 bytes .../animeextension/pt/animestc/ATCFilters.kt | 174 ------- .../animeextension/pt/animestc/AnimesTC.kt | 294 ------------ .../pt/animestc/AnimesTCUrlActivity.kt | 41 -- .../pt/animestc/dto/AnimesTCDto.kt | 78 ---- .../pt/animestc/extractors/LinkBypasser.kt | 42 -- .../pt/animestc/extractors/SendcmExtractor.kt | 20 - src/pt/animeszone/AndroidManifest.xml | 23 - src/pt/animeszone/build.gradle | 12 - .../res/mipmap-hdpi/ic_launcher.png | Bin 4334 -> 0 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 2303 -> 0 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 6205 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 11608 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 17786 -> 0 bytes .../pt/animeszone/AZUrlActivity.kt | 42 -- .../pt/animeszone/AnimesZone.kt | 439 ------------------ .../pt/animeszone/AnimesZoneFilters.kt | 279 ----------- .../extractors/BloggerJWPlayerExtractor.kt | 27 -- .../extractors/PlaylistExtractor.kt | 18 - src/pt/goanimes/build.gradle | 16 - .../goanimes/res/mipmap-hdpi/ic_launcher.png | Bin 3120 -> 0 bytes .../goanimes/res/mipmap-mdpi/ic_launcher.png | Bin 1715 -> 0 bytes .../goanimes/res/mipmap-xhdpi/ic_launcher.png | Bin 4152 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 7328 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 10002 -> 0 bytes .../animeextension/pt/goanimes/GoAnimes.kt | 185 -------- .../extractors/BloggerJWPlayerExtractor.kt | 18 - .../goanimes/extractors/GoAnimesExtractor.kt | 81 ---- .../pt/goanimes/extractors/JsDecoder.kt | 48 -- .../pt/goanimes/extractors/LinkfunBypasser.kt | 54 --- .../goanimes/extractors/PlaylistExtractor.kt | 30 -- src/pt/hinatasoul/AndroidManifest.xml | 23 - src/pt/hinatasoul/build.gradle | 7 - .../res/mipmap-hdpi/ic_launcher.png | Bin 4287 -> 0 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 2845 -> 0 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 5812 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 8844 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 12136 -> 0 bytes .../pt/hinatasoul/HSUrlActivity.kt | 42 -- .../pt/hinatasoul/HinataSoul.kt | 308 ------------ .../extractors/HinataSoulDownloadExtractor.kt | 98 ---- .../extractors/HinataSoulExtractor.kt | 243 ---------- 48 files changed, 2676 deletions(-) delete mode 100644 src/pt/animestc/AndroidManifest.xml delete mode 100644 src/pt/animestc/build.gradle delete mode 100644 src/pt/animestc/res/mipmap-hdpi/ic_launcher.png delete mode 100644 src/pt/animestc/res/mipmap-mdpi/ic_launcher.png delete mode 100644 src/pt/animestc/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 src/pt/animestc/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 src/pt/animestc/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/ATCFilters.kt delete mode 100644 src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/AnimesTC.kt delete mode 100644 src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/AnimesTCUrlActivity.kt delete mode 100644 src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/dto/AnimesTCDto.kt delete mode 100644 src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/extractors/LinkBypasser.kt delete mode 100644 src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/extractors/SendcmExtractor.kt delete mode 100644 src/pt/animeszone/AndroidManifest.xml delete mode 100644 src/pt/animeszone/build.gradle delete mode 100644 src/pt/animeszone/res/mipmap-hdpi/ic_launcher.png delete mode 100644 src/pt/animeszone/res/mipmap-mdpi/ic_launcher.png delete mode 100644 src/pt/animeszone/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 src/pt/animeszone/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 src/pt/animeszone/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AZUrlActivity.kt delete mode 100644 src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AnimesZone.kt delete mode 100644 src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AnimesZoneFilters.kt delete mode 100644 src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/extractors/BloggerJWPlayerExtractor.kt delete mode 100644 src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/extractors/PlaylistExtractor.kt delete mode 100644 src/pt/goanimes/build.gradle delete mode 100644 src/pt/goanimes/res/mipmap-hdpi/ic_launcher.png delete mode 100644 src/pt/goanimes/res/mipmap-mdpi/ic_launcher.png delete mode 100644 src/pt/goanimes/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 src/pt/goanimes/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 src/pt/goanimes/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/GoAnimes.kt delete mode 100644 src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/BloggerJWPlayerExtractor.kt delete mode 100644 src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/GoAnimesExtractor.kt delete mode 100644 src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/JsDecoder.kt delete mode 100644 src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/LinkfunBypasser.kt delete mode 100644 src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/PlaylistExtractor.kt delete mode 100644 src/pt/hinatasoul/AndroidManifest.xml delete mode 100644 src/pt/hinatasoul/build.gradle delete mode 100644 src/pt/hinatasoul/res/mipmap-hdpi/ic_launcher.png delete mode 100644 src/pt/hinatasoul/res/mipmap-mdpi/ic_launcher.png delete mode 100644 src/pt/hinatasoul/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 src/pt/hinatasoul/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 src/pt/hinatasoul/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/HSUrlActivity.kt delete mode 100644 src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/HinataSoul.kt delete mode 100644 src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/extractors/HinataSoulDownloadExtractor.kt delete mode 100644 src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/extractors/HinataSoulExtractor.kt diff --git a/src/pt/animestc/AndroidManifest.xml b/src/pt/animestc/AndroidManifest.xml deleted file mode 100644 index e826c520..00000000 --- a/src/pt/animestc/AndroidManifest.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<manifest xmlns:android="http://schemas.android.com/apk/res/android"> - - <application> - <activity - android:name=".pt.animestc.AnimesTCUrlActivity" - android:excludeFromRecents="true" - android:exported="true" - android:theme="@android:style/Theme.NoDisplay"> - <intent-filter> - <action android:name="android.intent.action.VIEW" /> - - <category android:name="android.intent.category.DEFAULT" /> - <category android:name="android.intent.category.BROWSABLE" /> - - <data - android:host="www.animestc.net" - android:pathPattern="/animes/..*" - android:scheme="https" /> - </intent-filter> - </activity> - </application> -</manifest> diff --git a/src/pt/animestc/build.gradle b/src/pt/animestc/build.gradle deleted file mode 100644 index 50b73a68..00000000 --- a/src/pt/animestc/build.gradle +++ /dev/null @@ -1,11 +0,0 @@ -ext { - extName = 'AnimesTC' - extClass = '.AnimesTC' - extVersionCode = 7 -} - -apply from: "$rootDir/common.gradle" - -dependencies { - implementation(project(":lib:googledrive-extractor")) -} diff --git a/src/pt/animestc/res/mipmap-hdpi/ic_launcher.png b/src/pt/animestc/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index 6d45679185373ab21515dadbb1faf8847cd45397..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4538 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 YFfckWFg-djng9R*07*qoM6N<$f~9wkX#fBK diff --git a/src/pt/animestc/res/mipmap-mdpi/ic_launcher.png b/src/pt/animestc/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index 384d412d92beb1f1d5a5c912720a019c5a328e76..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2938 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 diff --git a/src/pt/animestc/res/mipmap-xhdpi/ic_launcher.png b/src/pt/animestc/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index 5129c6e56fd0482353e08d6807fa71d2b3746d10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6086 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 KR{g>X@&5o=Vv;rh diff --git a/src/pt/animestc/res/mipmap-xxhdpi/ic_launcher.png b/src/pt/animestc/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index bfbb552095f4e085110356a5449d3a72fe04b0fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9160 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 diff --git a/src/pt/animestc/res/mipmap-xxxhdpi/ic_launcher.png b/src/pt/animestc/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index f5229e6a7df0f9f5a5313afb8b35e67ec7d40787..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12389 zcmZ`<WmFqo*9{KE-KD`=+}#Q8h2Rv5OK~smP$)FTix&@CAUMH_7cZe$fd(s-;%;xA zf8U>PB{Q=!le^ZPd+yo$$WGGNRU>>x_Y4345NfD{UZJjisG}7Z8+A^rj9x)qFr5^2 z6aj#*Y54bVuu#8Q?9^ZB008ee0D#C?0N@sND{>D2@D~68_H6(FsT=@++AF`)KnC>y z+g3{r1bF)IQ`}RTj=F>6r=g>Qvx`neg@c(>Y*G#Y@VjV$6pezG4|{?`trjwO@2u|f zrJWnuCR!cGIB4{8#;`F2hx^|=Q;xKWKB4%uU-s&cNwuzj;H*`Hp&j&;3#<W6|JSWo zStAFwlHCHo|ED0Jtn@otLIJllH$`wmG3JBQ7{cpF)~VrYMAC$+)!t1aa3(XnX!;_v zJY;$)r08PB?GUzTZjqx}mSYB1aqt&~@6wKV{|1ubjDyM;sz?%9e?wgf64B7@2ePT* zS6`MZXVP59uO9rARpOqeHV5-1!n<dzcwVZP&<mK&uKtMitovs7RfsefPXwJ1IEN{M zHmSg<PiTaesX!YwBOQrn4G0*Wz_^V{@53v`k-+prw^GQ4G662R8OH2|dQMEg2lxg2 zz6&o&aF~1Z8BnU=YsXr6qy>bizgL$Pum)wJCr92W&<oI40e&wXC4q#yp;G6)OfxtP zSW=N!kp<9O>_+m1hr**G3ev;9zdYwNl(H3g0tC>Sn(89qgvY3;cEJh_5Fb`OHXj-v zfG*M}QFnAC`T3SQsq_1*$i*n@>iuNIa@ZjwBZmLQ#k=De;%CbU+ixOhN+O~nUTXz` zO^07cxUi^_M@9QIH-w7g`T~k5FsMEa;1B^C(59jL{FJZH!k%&jRaaJ4@YlY7>9Y?i zlvLKTV?BX#35A7as@i`|tVQ!+%lYGm_VS#78B0ki9}obLH(V&H-oJ#y;dUoMmR*-e z{C?#4@ncVZBT=obVzsb(yYIn3AJ$_H8%cp03e3m1G)nQ}k!s)zL2%fFAcz0nPeI+w zbBfNSU=<hn!{^S`4V=biNkzIQ$)lR2Hx$R-(O9)F{rj1Tp3@ScuNYlC0pyS5f=_K! z%yI*CAy|H6@)w95$IxkVaVAfJ;Z=gSfO>SUiZ3(72_JD?qKD3&DxvbHVG(JhCs+P{ z6rI76Dr1@oZd&*#<H%6CkwZeF?jrG{ezt6+5rAQR9vcxg`w=E?fr*K|Z6NANc1}Fr z$w`9qE3IG$hh#j=r*QO!)ZC5oN(!aAM&j!z=%e`hRUn<+UpN`7(ilnc*ZR~`TH)il zKaz>7oWNc*o&u`-q~~k{OdAo<{q;)*$)?Jt3e^=Y`ws$t@Mcik?x3^EH7+q!2?Qsw z<OO<^tQc#~MB;g(tv5rT_Go<BWCav<qcGw;mSY8~@n#Tn(NL*jZ{x(#BlI?wS8~<T z;4S?Hf@7Xzo%Q7+I(40$i~h2V%=o2d4P)ak2n1dz8iXJ1!+i3}y&^aS_xl&m%*@Ol zl!3MG*v@Gr<2?FIXA#Tqy%|hEh{VxAlADx7BOUyR@aI6hjc250$lzai8*86Gf7T8R z3@phLYYnI9L@QNMwqqR&Vt@s-(wwdIWk)W}M_UI~xiUw!?M>U&-#scw>5Q<=Vy7!% zw6wO^gjq9;bi7KrA@b@?G}6V7@KylX_6d=8Ald?Y`|d<VMFWJKW4>_qt+t9qp5`1p z;*;K_^_{vbI-V#-t1qdd>sd-R_Ec0<$TOwQFD{zw?R-f5!meNyChOnqR666Fazh6s zPE^;(k*Q>FC$OEn(!nIvK<8Gm7lf`%jE@tU7#YnNmMI3PXhb5isHWUJDk|FoI}-1m zHs(t{7o6*ZQv{8SjPzf>)&)WUeOC`-dXXe0@vqr{HMOvih2=HW1edL1*<N&#db+vv zUxkq;4|%9<(f38aA|(K`Go_sk@rOgwtO6NNf*9O*k9w|{o~9Rjr=l=$1S(o;rNOee z_erozPY@d{a2>8B{zv%*7vT&75wEoBy*8aR+NM%gXB5laXFf5W$$dj?{lIm$Gg(?+ zpL%=yj*8E6^sC)S&}JNUB$+^5yaI?Tasl|sXd&Cx)%Dd-iv%AXdJ7B|<yvm{y_fPD z**K>(rU0(4s@jOcVX_(f#Lj%1mpHS!`n}bCMZ#xGeat1QQRMpqa4vDb!D%W#c<xMQ zE?2uG&zJ!dS5{W|gP=7A90+uX^Dz9;i0~OC6hFS<4~;VY`+ZwmM~ARF3av2g(#!}} z)&d}?$LFJjU_ozd-oJm39JBwF-qVBSZqi@*xx?MPYX2?y&pYd9PRXC5VOhDtPEFoO z)$wuFolC~RUt@FST3-=Vonw-UIW`X(q&ILV-wST;Qje+p=+<f*y5j1ukmY4_BUnGp znT}0!B1N3)dot*IsLu#vV57^KBZJcxpRuvAEki<OQ8=BO`<M$FjpceiKQOy$A3q87 zTi;A*Y%HA<f37gv86XZ}p-L`+`VZ%LV$f^)`)Yx!YZ{y$;t2;o%T*#P@;q#Z-cz#I zVA*`cTzo%zRR_}|OTy&+@Bzz3OEI>-1I`34a7ekq_VU#D!9<I_wDfej;(`2<%tyBn zh_b-X?qFd`N=jCboJ{lqwMPTen?mU8jbWsSxaf8dV=!t*_br&Yr`!nJ7*;=%$Ha7Y zao?W5`W0e4zw1}qd1+p6)zi7<78ait4oeI*0q+jm3c9+vo-W6ClNHy&C~M65fDyR& zs@0!my|`94>%0EhZVtrR-FgHEOXi8We`#%PEz@~U!`80@JY95kA54KlyMM`hqSHL< zJ)k+`#|p3cVMtX6%a3@xskQ0~uuNW}<Tmy~>WCA5HYiW=3jIf7_Xq+zwP1OibhGed zI=j0&Sch~;4A)|W%M;{qnN@M6A{zq^&37jA#OvL@*$Rri{i&d=tUN{zz_u#8qPKg5 znbUi^xlc}n`Th%d>*B$|lxzS7`^TVO2DE=V*Ni@3KJlAf>$(TE8HZD7k#JorE5-yO zrmgL4Yivz!kgY_l$MM96QJfxG*@o|h!U>i*GuuWOBBJ8RPCob%KN+N#rK-ttP9JQ! z=&;svH7BCj5HA=XvRG&LZ?(fv2_KNC&JK()GO!9OKz6pYZW-JAXh!BBi=i;!spv-2 ztD=6EoCkjRwXH|T1wy@EJmN9*U&k&J$es&QtO0r)FqdAJAQI-{@(F0jC;e~9*Ozk= zL$TU@xo~@-pVZk*d*5LA0#|?c9vBwc&VEs0KO&VP%uXIHs)8*DJ57!+>G(8ZJG;3L zc{6~vJfa#hZM{~!P@b~@HaXemkI1zb>huo>gDIioC<oLO1O4`k4YT9{_Ec-{<f7cd zm9J?WxCqd>xS+9XMDS5vV~|!)4F*v%Ks8Y&rWber!hw?~+4k!l_e2(N-Yat!zsx6H zAk|$vQldpfTrE6p6mNrr%+!rrW$P-cJea2POXSgAt!2ljg&LFHty>rj_I9~Dx2dV= zWiu6k1R_Ox!wPHl=jr-Ws#1nBx63A6)D1<L#H+%TMxvO_5&r(7^kN=mzy$nOQ8$Fw zBozFUj2J?L%}fc2umd9vJU^+ZR%c~VG1vv!UHzK?Z8fOa2mDH?RzSV-*`)Yc$8;Fc z;^Z23pbS%GMMZp_McXIM@``WffcRRR4c^6^HWVC7kQ!Y3+0*sWq}R>ddq$o;6E?a@ zK!F4dR=eK#d@k-tz5R5YyW{cppz?<~fQ2XGCeqXW%z0p3Em<8G1!dZ+{&>@CpUL?2 zBq;xdB0q>Xh2ETYuL?ud8{Z&RcfRKeZ>s}pNg(_cb1viy*k){)URK#Dy9FpJ=H5h` zGem=GhK0!<EH*HMo3xDD&*!u{4qI0$K*g*2u_sDJdf$-Tj3XuW@bH1fd;zp&a|?}& zD|*r!>b`RAk|pMiRzbEd5Y~uy`w{#O<uC=WFmVm|fxUKhb?U>Mg>rJw(M4kAo<Ksu zw2Hc(B{-a(`e1W&^Y*~CPC@oAP#hLMwND_8t8At^$@ouB&=%E*HwTlaD1?6m=^eVR zmpJMvh=sn^M57&W^P|$V(MC~mnFWY)-YhJ9D(wzfWMW40sOKF5F~qUwPcM%4IWJFe z*e0cesy&2j@^Q&NyXy$vRa`%cKo}#|0<AAoT9k;j;3p_x^5db(`$$D2j+P=A1h-~d zeiV&k`Vjg?U}?KBWVqlj8M{Z<p%`Ds)~D(!EQYA*iupekNzPH;q{Zdccq23ncJ<Fk zcX`f(wg?gCRJ`Wj7z0-YOAhiSyrX~NLcdJr3MYKX6N6}TRDPjq|3TA?@V7D_{zJt` zjh2G6spF-FOk)@Ve-cJ7$x|hN^;qk~<A*b?HN{mHzT^57U={IjVHvytHZ;Je*?3IZ zg-IZ5E2VZkVX>{fiM5y>Ij+r5?Aew=oA%l1oO-7-%ETvoS-fTQfAHFBpwRaya56MA zlca?8v8!$ojd(lLsd?84k}H6YW%xOOSAs*1Pj8zh{w|T@`@Y-GGzogRSPVw-=}(xO z3EN@U&S$rFkIB!~P%K19p}3n&9>k6#5-A~(>Ps5M-#YU!O<xPEHT@cW(9j#Mw0II$ z#K{zqPtK|9wKwy;FzEh7eK}j3W2xJPyxDQ`vkx1Kg!sRAb_C7CIkI9L=q;_Sr~Umg zK;RWRVcb7|_{X}#UKA5TYd9;;FaQ3UoY#{tAY|G~;w&s~ZWjI&z-Ix^xA5q27>`p2 z;E|dg1-}kfx%mn79tHtemDchl&myHOmjCvies(kUKZKFP5!2z9!cx-Gq@*c=-A|8q zZ`V3SKLvEwPlO#T&abY@l;eKnZFNiOu&qr<PPv`e(a~8NI-;`)FOe?bui^rO!EaMo zmbQ;K2W4)5+QkI-Y`%N17JhG+$}G>M5t7YgHeeOFCi?U8Wh@<Ohwt>S9-%DtSp#yG z+9N|<l7E&y{`YDqdQXeEM_T$XfKk&yf!xm%gaxw{`WVfiTSL$A*|a>fMu<vmh}?tA z&UBG{IRbr&uGDvB*?i;+mg>crS+k>qQ*Clo4gT6vXutVHty%NW#y5i--W5m{Pfvbg z`STgtTuY#mwKa3v{q+c>9fXD=qmiBigw7C25<UrvTxtEQ&Z}@gYID5g=T-)Jp!t}T zl_!3*QV;)4UbNBVFu@VpLv0-jK^@*dM-A)<re&`fqyzpY);<KTdgEyEcRFjjp!HF< zvm%3&zP(T`S5pCu(7X!?af>>r9RF<sc6s}D3x09HnZKJiW*>B2lCbyZ53N{`E=VHu zS|CmK($ro!0L5x~VjgS|b!}Q+lGH<Rs^D&(!T6slT$>cdln$Eq#+iceI8Erjs0b$C zyX;TU@$ErFv;Tpy5#{vRRL~7P?da|vwF~z4_7ZEE#eeyco4gL*HkwD*0XB`(4CZ(G zF20f5{ef7XQ<7ogEYMvCY+ap4qbq`Qr33k{LT~3G`AaKHOJfe%R`K~r^HjmV>%B#Y zM9mlzF!<|@aM31;ZYvrZJfTJql8tz6j<c(=AQ}I9;-YlGFb(#r>Ri<=JHt1CW~cLC zJpsIDyLziDHPF@2v&mJzd7aYR&>so*4d$@-2Z-8D2=h}rORn3EYR>bv0q^|azA4|Z z$NW-WATAGpin`PHCKC1^R2^5(WXl;O;(j$v36hb6n*8vO`!vRuC+_KZ`FF{1jKY-+ zvR#_1J$0M3Gdx^-=ZhuKJkv8S+5~$zvT94sk}1&tM9gE+nqpCDOo@kM+7U9%B$+K4 zY>Y0U*pW_iJgao|f*Hj*vqRLrcZY4%oi8B+{#IhO)_QIhD;X>b&QNQ~wz|4Y%U>+M z_4ty*B7h0awa4jrY0t#=)`+h*{R45U!Z4`%cO0rhEstpp0I3;4Myjj;dM(V-dx&y1 z2>Bt-LsR#o)lYuQb}wix7F5MPH&Nh#=Z2n@toZ9!h<=zQLB=^6b<E~eo|ulrYDdoO z+}yw|A${VIt)U9O<+AT-*-L3Hnu$bAFUEu@zhx{wUO#>xLO0$T<GOJ(_b1x{_qMg+ zrtJx>*Z8p&({t~en)aK6V^r^xX<`l}grnHY-#*pAe*F0HU&K2;lA|q1YhYn9@lbR_ zu)V!)sED7>3FLK3Ux(n4{CwigXn*hocWe&Rn|-xaDardJ9{RWQz_jPxg^`4FsWFHu zH4PA%_`Niie7z3#V{x$=g+aebDa;FaUhwnp3SX`3x&PTE?&`C(Be-CVRU_7l%-Y$h zCG<!8*xR`t{B0((EtwzQJ~KHcUEluu{ikW>sc|n)>mu4}+i#7SBz6)@E8KkpN`XKV z{e}K-kSe4n2L>u$Lssatw6tXKpecp2k*1lXwmcVmyOBg%Qd?V#ey#qJFA_{?_uXdS z#z?|%kA(PfUVe6EQO&5-5u7U@A=kDZ9<t@FluX6@`yb5h=3gLOm<H1{+L;VuZu3() zUX8&3PpL?&={yORh0ovZB@isbC3EtPJQPX4j>_OhW5>+3w6yTGvUuKX4meXbC3>OU z{y3epaO1FToo~T;Hn)#~bV+!Xc~TN?YPg3``|vhw`r=?wuN}Ut?-v-@ybV!nMEvgb zX!W~~wXQ#Cig*e~5f(cqau$`E?C05S1BGm(kB{9VSuo!b36##%rO_eGvv@6rIXybq z=MLb<1NhyS%Wg3TNpF|ZU%ZBnBh%!W%+TuQz3<%HGEZNgdl!4NeUNFwCUF7yMErAN zg47*G+;PfF?vTB6Qszj1g9`Z0FE4k#rKWa9BK}krh$i33-<gebb7_L{Md<CS=s8qQ z3DAv9Oq`f)8A+MStat>51$-S_stKh7|7|Tf6^`YKzqC+rn_x|wSz9Ye53#)Zn&!PW zB4_;0oaN(oeEDvXe5gw5e1w640fb#)%p+0-5A1;Yx7YDTfBriIY<%a3eG|!!aI*m4 zT2!8)P9g`{x9&ZO7hc8mkEd1#YkWhV6BGQP=sf9&KDvvcq~ky*-JBF(x1T6YBYKoK z8Ks)J-6W0}J)PjM?Cg|!<*Ne9K^YdsK@76*M4TR8kU$wnys@SdA0&`Tu+~<gkD9qC zFX%;+v(SWZ);8RsvaBy9Ur7r_wK-8NbM-4MTQ=k}ws-u{)WJ|Jo6kzq%F3$cvJ>|; z$DkH}kBIHVm$7HyuwnB%yp3=0%S+-1cT+-=v>}FKXa+VKHaGV1eoe!dhHkPk(ZT5c zVA7nw<{KznoLaJ7@Xr54_DGTm6nfjZNQ;TfT=CqCIg<fo|H|_^1@=&R2GV;{lsgx@ zE+9iHFhJgjhb64z8B?kn2s_gaCDis=5ZYS;MqUWwknyptZa9r#7G3b#^OVUxKU7@C zS=UrR@3Y4f>cHC+h*mq(CImPaqn*-WLFr^#Ud2OJaX-Zmcu+DJKtIixy61|o`26B2 z%A(V9k9%cRVZ??`W{<UkAJ;37A^R}UPac117cZ+8ZDP{4X|LHR<{U!8VZ8@o5VkZ@ zQv*ac76r3La(!bccc@_hCj`>V#>JFjUQVN(D+F;UENKi1YCaHbf8i+N-U;S$KXu8i zHe%1rDeZqa|IxU=Ax|Lp_gL-YMyHGQ-aqO~2Ep!Mo5%M|3F24M3<shy9CK{I=m}?0 zh37Vu=1%5te?9qTE}rss+NEqNrfUP*hL$b~a*F)gjqITe{JhY5>x|9P-Mf~l7B(vt zS}5h#U-I{bm%GRE^#+b6FMPRpO}<~42F4x#dp?LL5Db58ohW3*c5`SV-6SB;iuBSJ zx_PTU5NAf2_1TA4mJpCJQUVnGTJM0>D^p*av+KRfPHUXMYhXxaxxf`9#zn{)1436H z&PdJ+<8wVV3(4K&^c)Iu4oSHpmaZx^=cafm6TgHJxw%^0pGVl6Ax<!5{tQH=W6d)| zj5i+y_XG=ku|)iC{xdF8vlC*(L18^;CI|ZGXxHDy@<n9PRIW{E=ptF@{<vI%xR(m) z+%UF8$B7=4n34*pq5@%P+XXql*g&nu0iT}l^eKVA@Y`?A4|^<|z<$?a=4D4SxKG%7 zx1EsCqd%CaWg6O7y3l7V$Hw&m@urebMuF#P#GB|&emkbE!}*55yTLSgs~K@EJvd1= z{fRyoYBE!K?l+IEnDXyLRhNldz@#px1gxeagC4QvuU?|U>5B}n&z7^SjWwBheBY0^ z4_>t(u$$ov_fxk{%2~MZxLdA?-kvv+6?7Bp_d@+iMh1|LGANOBNs%I8-P~~ju^eTz zZ(3p@3odz9U%J{QGns8%S;aRWJ$>sGgKNsoW;_01Qd#}d5Pornx%N<Dsy-v^ik^u3 zM;n_(JZg7dg1adMcx7F%bGBIaBDsL<(KcS4M8O8saWH3db8Vu>p{%37hnPLQf$tKK z6NL?X-rn6cM;Xu4u}qJCmOU^jyBUBgTqlohNm4hlkr@2z78#^AE>Dy;p9w3_&r0Ke z-Pp&>H@!)K{vT?X;tndR9vA4czOxsv_karwde&<~{5Z3Zodk`@R|8ev>C;mL`JTn} z93BP@W<<+a5UryX_ZCkUDm6aK76}Or)_D)z+M;;mX<|cdmvzfbTeCcqJ&6WgH(nfK zCK)90AejQj)5`M=d&N9i6&uPOBXf8+hl<vR0t&IGj*nI}iza697OA1Xniem}$|x_> zGUUC*2)$%NbyyQ-1fqQ(-ivVWU<q&AQ$O;6(0!~07k3LCTw<eZac=cxCFYpb*dnpZ zx8z1cd@E^c2b#o+U=wqSFFLal&l5)LaS(hHjqN2Y<{J`T&f0W+P$2<<8JuqM;QeoV z8{FbLi02K7^;P=0`eN3Zj>bb<t#@kCxG$9KVB3Y;F19yU&-|hLkgvH4P@{}&3svvA zfFCiGG7%~R*$_j1HHwkghT}kBl)gEojJ498<T9zT!|^iRa6iE!lasoIiU_@4FxRg~ zk<Hd;i{G!>Z&}M7Zu14hH)-n4_P&<QPPb77MX+Q_NxrJielu9IA}y689>~|n7cKEV zpL4`CE`#&jfdz?$N9)3Wy{3SDE3AlkWo^Evh2QgXPX~3vTaW2o3p4w?fdA!O3UlkW zYxj3IZ2gVutLjAV%p{gBs1WIWuMAV{%j}`dCex4pnO@JCDp(xvSzdB*BT-eidae0% z$7Z)~+*9w^rOd1qzVTzn>~v~(>Z#i!BV(hV@W)NY&#WBZFwK-Z)j*w5km=kMfNC)^ zXLJ3bieN$ECytN+$xgLn=;(E{Qw#&*t+qBIQ0@oU&7N9!KS9+VHrcN|pX;$aL54va zDzKRBOyX}EFT!@BZ;b3rJL?>FioZ3#M=|2$_gfj%c$w9VG#SfJH$SOkq$5A^ZA!du z>q9bIw{!=Nj;R&N+Muc#7&t@(cTuR|tX)YOR93)%%0~Za;rISR7GB;RhqWIaZ??z~ z=90jUoi=eLbXm44hhGG>ahb}qaOE1RPU|-t4!R}2fGT}A@USHNcD^fDYbFos?#su& zbBJzdRr3>QkkAyu+?;)nmJ+ouRPGUf`me<DGLQt-QYmN-v)Rf}2Zy?)(c1lbwJ_mB zPf3T{2QtJu`v8dtO<iveMu6jX=q55H{X&SI6)FVwHXalY(pwRA5!0t$;ywJ?sBrLh z2q^b?d|Nd1Aq#*1-iwuw9wCq#;_J%0n-gh-qet`FCGcnG{5DLN)A~fQ3k*ZPWu}1u z3XjsY*<{=f18kIEf0kCUiE^luBV3^CXreQJwjES-oZe<DbE}$Cz$_87z!>>F8L}}c z*#FtyAZEIfPv`7Jg=zcbYj8zV*@UkB+QWdw9b@>{iS3RxzK}GUSB0^;b{!wc2oImc z@365u)14#%-XL^8e}4z+ffYO@pyqAMb*Q4KDXXR6G^^tm@rY=1x$!9sqKF>R{^p}D z`+NO8T*M1j*nvHlfO1=)giM?CsIqfaYs}aYYnUDgM>HrxHR$N$X6}_`YtI1@8F4hM z&@R4JWH-n`RVD6F(%beMaXyR-H2S4&(7!J_w59z=N#A!L2k#g{#{=ALg+a2H4FMAO zW2Fw=jC`F121f4Ft%H!h&12-Dcj^^hM9=}?q7q`GzlT>}a1uA=u^A`Jr`L;Y>Y3kE zH<fc}xtd1n1Yb~Mr7}ng{Z5$D1i0}U`$v5Dw>DV7nqPWDo)FJ&LswI}MhV8U%eX9! zZ;*%BkDzf{`lUUXFCEGBa1UP<8b3ZvVzAkorEh0gMO>G?2}u|<?6Q3Q6WP>jG5XVR zxuP$@6OQv&X0d){36F$ge6ni4xvvN7P&Y{->TK6^964+L1bn}X|8yLhzbL)tjsH}A zfYnuI@hj2$#xhNsf6@jlDai6yVx!SLdjhqnf8}iVrg1s$Q!Ow#r{c3F&O%mJ(op@L z{EKEMb_FLV&a<5<6>tPEa0HiVDsNZ<B8oSa=ip5k#04=Oi28%k;7`jGAxveqUxrIy z9~%)Qr|2HngxZVqU6#M(HfDsq#_Rd9OXLaR1H!wL1vOoRa~G_e`I(yoT%<>dqbq$2 zasQU=)ns_k@Md{2RM6YD)1{+tWek>ARc&^0;u~a4bt9x+B-yeB`s=bPQA7Ec4KNuC ze5-0<8SLq5Q4xhQQQkwzZ?U?o)S9}igS@TJ9oC!2c$dO3MkoTUX7p99kHaFSom1aQ zaiT3tOR1O71N4LjTvq037&B~;E~?+0Jn5ny*5ap-9GvvpW>NgcsJTA77hy^+$DZ5e za~I`uZ~=csz_Gi{_I~NOqQbsUU!9es<01iO5qA`7+0e%UsL$R;zi)Vu5$17N(dp@F zX<z!h<IJ}Wnh)W#FTA>+j6$c4R9@swo4KtsA8KTmzN3)s=^-E>D2Aq?CE%~kj-^^^ zKc{^fRPm{NAp;Kk>A&_veRI0f&InV&`#uOke=hYgFUGYJw{}t|iDc0p|FfRU-&aA) zZCQf}YT|ln=CmP&2}p^szBIpB&8~R~9L!L{Q@Srian+ixB}zo^(MxX5uHj*KQo}wo zS5*nM%{AQgbYC-B4Byfr6~rcZHE&D^-_K`dZ*>%w4ts;cf_|-bEYHpg?(=_enQBBd zd9K5I`UdBdH@_<5&dV9jzBZx!?3xh|T{W^A&2r&Ks4<QIo<}TGj|klj(%_NoJgb2| zek}G`6&X&<z!|v(A^-~R9S&xBMa|$yyXZB?bt-n+SI}FGMgP0o+uPyuAwi1|a99xh zN$U7p3l)v@923J{62jDkk^w`UZ%V%)B_OT8&Fhh&NdCcI-r8KYkMc|gIuUJ#z&~qF zRv>td9`0DTeQc&wlrWg1mvkOl1R{BU+Y8z<Q~;NR$miOCo#h>YqTnXVpM35Y9pT>b zPiLB;0#d#}{kSsv4A<VXPXxxB-xNN}su4E)^}V@ZN?^ocAS%EeEFODG{R%bTz)3|i zXp|3oSfu6x?z%crjRLG7RZut->Q;G%sfvR)y|KnvfjzvoH-`?6Id~XWGwcrQ+pK$- ziuI{&=6n@y>k^-rWsg2hsiXpwNV`VG?t1*xot=aYal5#^zy8cDxYLa0zo(eIlur2R zQ5U8T{_}UA?kszRQdYFIlWrs@1sae%%BjNkdoSz6?gFb{ah9$m(;Xb-qn2_-r1tSU zBS-&wyF?W(DJ5Eyq8p5IT+Pv<H4xLx3@N!J%Y9$7<8<9aZ}`1-<~iP};+RnK2AzXr zTvJ)U(*>3sv-Q^3+DWGX2mOsUao#eSn~zBp?%4U}8~nEQclI3Vn{TVrSl?J;qRM3@ zQ0O!8q0q1;rll#5dGQ_|pe%HAKP{+bVOf3U<!0_r9nmaQ?0y+Y-<g`Qa4OMu?0_Y| z!_~$&dEBS-^0VqFURHkuyTri43t_VHn`T~S*>&XY5N*BGbfrVZ5bk+p%qqII9!wOy z`wP?>hA4DqjydpsG0Z40Z8uC{xp-l8(Vn=<2ULNG$kXC}Jc(^JpV&V8;?8OBMutZS z&H|sw?tIrzy`t^JiA~{;Nk)|L)5AY)j-6RsX72cM&;KyqGb8`qJn9<HLknV|jmgT* zLPdF>H<$5crW(#(rYT04OXNO-3%>?dK`W0hat=InD(CZQM*b2bO)>0eXO}cAEa;)P z_-b2<;D^w!&QZ3i0sXfFud{Wk{c`ANOQ>+y!?=HByrgf?_MM1hY6z6<ZkgUJAZAEC zfA*4CUwt^H83ml~X1{iPU6QGB;X+)S%=HmV#`e^=+ujZurPFaA<PP|zkH6*dSwDE2 z>8roJ4^jm`2_l1$O%Khel0RTBmjG4qtAjo@B(7q%=u~MLVybQ&5;Fua`nA_C;Op6> zT`~b}NI@m713qi$6Z`l=W!=TYuEWG0G=UjSLB}5U>Ps45-loUe<8sX$%DQ47$um{C zHVgzZ+7VT%lAc9~X^%b+vv~@y<?6w}Xh4sU@8K7C$8bbm_-=%ddvM!vRd)eS7D`Cf z;B8XPXNU@`QD5k|$O|*MEn($eddeow(Le@qnG?sitDNHrLajr$k4X5@ylB)CGlx1L zGVJcs0HO_rKJp&ViQr9r_#5-ITfm3YNhrzXBsI4-_Rgp2ATE@mnhcMN)-zak_}`!- zaM__38b0Ek51+LUEx?Do)p!R_LrUBkUF7xsy!=x6A_emfO%HxZBuQN&0;!8X`S&~_ zp>1Tu+E*mU>PgGfdc7fZeRl(gT)yuG8M<EpO4uU@y%jj_t%UV;JSXEZVh$J8UGz4r zI%_`tVZwfhFCX+=_ih$%^0BuG`ULyZy_&js7%T<E*F32mqM4_5jk+rB^msXl+wD7Z zJacK<zQ-erZSVBt-et)YVs|f^Yy?x=<Y%z!MD^qC50g^>1&oZ>2%%n>zw|LL_=Ch= z+xbUX`Gfv!WcMuPU%`w|RHIpLe`P$bANk482~t+h(XPAx4g@|uK0siCbB*6FF9UwL zdyb&QDH}x<Iwih?>LiS}*2-vtujnfDTO&Op%&+-Z$YL;=7vs>2o~&s{G>+Un(^?83 zoU;xx#H5nd&<LV#(u)f%Qq>LWF3a#^C7D%?f>pMe=k;qi)~P3>ZeP8J*w9`u7%j+) z4f|aeQU_bGaw?dZP={|&E|(lvLYEnXYqSV}8)lnFMOw%6ZAuLvK@mZ!asubwkwu4z zClA&f>UT)7FqsYMYQNjv!d;Z7&<2P2eo|eVomCt@JC;3C>kF(*-<u|6)zs@fJ}lxy zL995Bpj?N#z`1FK)4K1?1ZO&`I+5ee^H2HgMzQ9$i0mZD{&mqjq*)66@bFL~HQivr zlicXj=t7+)X0%|x?w=yrtgY=ZWpx3(c#o>%r~R<(2H8RaP0`QZBT_xZP-{`(+TBRb zwkXwB%STnNbVX1qbUy;{x{yMzsn1Kh@y$6-8e8y=tawX7avr9#`(vH7-Th{k&?S@i zfDo@8bvXFYXaOfh@W@dn&Ck<wYPrx5o#AJ1QOfQnO|v05LhsFb3x|X_1I7_^z;%q; zc+eJ%2G0BXNPlD3L@0b?>Y<cZV>#_ZFQ^Mz2zWd`hOp`d7pgfC{e3JM4SrcZHKi*v zZMO|Jd9VaOF?xwCUh!Z_s7lVbUpJ3TT<htvODsEir6@siKuf;4jHL`RZ?1RJ@!%)( zY-;bC4;iLKMG5cAkM5oXYFdqb9j=H~&at)=6a)2$*JNc)-2!RsUiHC%WD`R@9Lh@H z_gG?{V>Sd}O2R)ZXxjO+`1Ow+bjaD<Y1@}de85Z954)7jmX83ArAz+~Dyg8WTq^BD z2`D05Q)m;H*X7Ahl>oTv`i6$3h~>lK9H9+O(xm&xa%I4%qqd8whV4oh-^gw3u<OKk zpCOu4)!2R&k06C%cxim^gG2O@T&Dfi8z=R|!S-0@4Mo`H6=>`FSJ>UD*Z{d^A}#kN ztW6kI;9obt+a1o)1V7mRV55=A5{7oNlF6`)d44}l$RjE24{4b`4xDDczR}IL$aZWG zP8#W6$}%-=;R>{u@E5Wl5ggR}m2xt3Nz;{vnKnh+Tgl0NpH{u!JDj8ZCo1Yb)&2Dm zm957|P04whGm}0i_GruTTC47V?<p4fPigGpx|@NAgI9&Rr>fb8$LK9F;3Z7D8Xi>o zY}za^_(>I2!yCdQN9vtKSf1c8FLxa3;CB(xwZa+g4s^3+)xNXLa-41{ZLZT*%)^Vu z>^U-iNib3H5XiFiGuVB%#<)^ZL0^24s_fV7Pg9(Af^X+rRM$WU&mPI_fMrdX%VxFR zSn7LL=aEuO_)oq(%w+sjqRgtij&sN5cZH8inO=JYUSBX}w_VbwUKDUO3!Qwicy>IY zf4$DMceLC0Lf0>e4l5*I=fek-u7hI#!>BbnJ;;9G%#BZ$Z3uWjcp)i`94RO^)-!}T zc+{2qSCm%|3st_V<}&;wn3&s_)%MIqZ%=D5DZ^_ow&bDe&5^<2Ki2qqWIXvxS^}3; zR|2KYr#R?i7R{NlqfO)#M%+tLi(@r9*XX6;oCfk7<zS1PY+$@=eC^1vsOD;1d(F23 zn-3X;JyWLY4zVfBIq%?^hJ}R;MgjP7Pa5EdY+w_2f#xijWitWD0tj{1IUecrd_Vf5 z-jDgY?qcHL%hCBb7L(6>e*PW?3;fBWh3O9u41AGG!W1fkD*=IlhK7d1#n2VdHypkq z4n+}~ci;XvTX!hXEZq<zmK$j7q~^lHLcR9%OA;z2Z~<s|D9t4*GTluXRkXp<m$Z88 zcB%{xiSjgedr|-q9j&#ck=xZGi?}HW(O6b_YM`feyFIok!SoP^zP~PH+Pblqk2rl# z?sX4oiRb?&kQ|H7`bL<Mk(gjnQK_2F+k!`<eOgjU;%jvZk2#ku;*#TDDD)|NH&|X| zIOyh?Ck_7lQ~-%lQLBOsm2@#wo*aVd<z4?fp@Nim0JAE==t65aXBRBWALWizG#~>M zx3y&>`#Vu}JvsI$t{$4ILSyV9e6TE0s72jF7--q>kKeDrz>#Q_XpU-aZOsS_4*sLP z!#?6&NDdL(=ypl3Y8P-m?dxqqJQB`yHS`pq+U!)FE>0@5<N#g9(M>7c1n46OB-HmR zs_DyGVS$qV0@{CKMo)UX!n3+bGa}C)Iev4f^?GkkFPz$}3VM|FnmqsK{f1=f))PI# zr7lb#^zMvyoB@lYV8id~T;IUV#cDB356nysVX}FyFX~RYjR$?<hY?W&eS-QUY9r(j zD|s&bO8nCu0@dsluyQQ7I&Z5hAJQAE4dV*&X`g4{NdQU+YGHh#!TPE2ZS$kP_B#!i z>V^?EG8^{}8sGH9d!oiypwrKP4fk=8LBB8`n_-s;se)>#;=wgbG}(6Cw=zxzDndfS z49@f*xV!}jku>TFpw?+1=7^t}ieSEGhTaB-T>e{|pPT!1=1O>jQg*T=XAP_Bo}a5v z)|%-6efW>fY&0l3unqA_Hjc2ui=h#o;6S{ewyTo`xSFW|Gn7I{_@kzVikVprjW2N{ zQ#)>=P6KJY+KY3lptOzR^rwHpzjW<V<jqz;+o_CcDft?bqXc%<RkgL`ki00uz6EXm zEF98j;dDWi*J|Lf(P{h3M5H!d#AA@416y$kN@Y5(*{xln396@pbVboeih)io4pDuY zXOD`}=ihJ)*4~}|{5rV3u(13ZDE8PPKv@*hm|L+=XE#L-p^wr-pNKL8l-JTKmB?#& z1q@Pw!;HXzG>{)S3B>c(Y~HswN`K`37!+5RMA0rRoL^lUzZXmf*%L+?w`W8Wq|0qN ztMek5(8YJ;xn-&maD=>o7Y|kPAJFu2!S|e1J#m!eSgh$f8viFOBrq<KhYV5^m5KSe zgi?KAYlf&~#wqflFJQwA9EKe<c-D;^&iO*9Hzof5$%P6aI;<}o$QRB*E<7wk@|V+6 zrI?lqO-BKXqL4({@ft1q<B1if(o;7SZVO)F=HfOSNn_gXV_R<-$3lsvpZ%wF-WnyX zZfHnL7WD7C0X9*zle9-FD1XQ1it4w2tQz$;*9a!wW3OsjQ`~4;ErB+mbs1eKa25RX zWpL8W6Du7OK^soWs^Iux?rr<EEb#|AA^L|z5j5V-8m1}^7F8^LqHnn4bNH3x^W0HS zR(RUk;porh@$y-YfB2yvRt31&EdMoGU^RwKCuXc-gW&=?k%`ZND3K;axAMb*L{ek7 z)+^9BUgAewWCnvSCFdm?GguEJ;$EYeKc!jkrZBs+xTJp_9wI)H%FORat@Z3lo(t$} zfz@=Agwo-&`>B}v*}w5~kh1e}KwSVr0z$&P0z$k(LPkPDQUW4UBBI;^0#X73+D?fm hssH~O;O=Sf;u!q@50I4-_>39=&`{9@)hpRV{}0Ow^~3-G diff --git a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/ATCFilters.kt b/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/ATCFilters.kt deleted file mode 100644 index 2f830ed1..00000000 --- a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/ATCFilters.kt +++ /dev/null @@ -1,174 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animestc - -import eu.kanade.tachiyomi.animesource.model.AnimeFilter -import eu.kanade.tachiyomi.animesource.model.AnimeFilterList - -object ATCFilters { - open class QueryPartFilter( - displayName: String, - val vals: Array<Pair<String, String>>, - ) : AnimeFilter.Select<String>( - displayName, - vals.map { it.first }.toTypedArray(), - ) { - fun toQueryPart() = vals[state].second - } - - private inline fun <reified R> AnimeFilterList.asQueryPart(): String { - return (first { it is R } as QueryPartFilter).toQueryPart() - } - - class TypeFilter : QueryPartFilter("Tipo", ATCFiltersData.TYPES) - class YearFilter : QueryPartFilter("Ano", ATCFiltersData.YEARS) - class GenreFilter : QueryPartFilter("Gênero", ATCFiltersData.GENRES) - class StatusFilter : QueryPartFilter("Status", ATCFiltersData.STATUS) - - val FILTER_LIST get() = AnimeFilterList( - TypeFilter(), - YearFilter(), - GenreFilter(), - StatusFilter(), - ) - - data class FilterSearchParams( - val type: String = "series", - val year: String = "", - val genre: String = "", - val status: String = "", - ) - - internal fun getSearchParameters(filters: AnimeFilterList): FilterSearchParams { - if (filters.isEmpty()) return FilterSearchParams() - - return FilterSearchParams( - filters.asQueryPart<TypeFilter>(), - filters.asQueryPart<YearFilter>(), - filters.asQueryPart<GenreFilter>(), - filters.asQueryPart<StatusFilter>(), - ) - } - - private object ATCFiltersData { - val TYPES = arrayOf( - Pair("Anime", "series"), - Pair("Filme", "movie"), - Pair("OVA", "ova"), - ) - - val SELECT = Pair("Selecione", "") - - val STATUS = arrayOf( - SELECT, - Pair("Cancelado", "canceled"), - Pair("Completo", "complete"), - Pair("Em Lançamento", "airing"), - Pair("Pausado", "onhold"), - ) - - val YEARS = arrayOf(SELECT) + (1997..2024).map { - Pair(it.toString(), it.toString()) - }.toTypedArray() - - val GENRES = arrayOf( - SELECT, - Pair("Ação", "acao"), - Pair("Action", "action"), - Pair("Adventure", "adventure"), - Pair("Artes Marciais", "artes-marciais"), - Pair("Artes Marcial", "artes-marcial"), - Pair("Aventura", "aventura"), - Pair("Beisebol", "beisebol"), - Pair("Boys Love", "boys-love"), - Pair("Comédia", "comedia"), - Pair("Comédia Romântica", "comedia-romantica"), - Pair("Comedy", "comedy"), - Pair("Crianças", "criancas"), - Pair("Culinária", "culinaria"), - Pair("Cyberpunk", "cyberpunk"), - Pair("Demônios", "demonios"), - Pair("Distopia", "distopia"), - Pair("Documentário", "documentario"), - Pair("Drama", "drama"), - Pair("Ecchi", "ecchi"), - Pair("Escola", "escola"), - Pair("Escolar", "escolar"), - Pair("Espaço", "espaco"), - Pair("Esporte", "esporte"), - Pair("Esportes", "esportes"), - Pair("Fantasia", "fantasia"), - Pair("Ficção Científica", "ficcao-cientifica"), - Pair("Futebol", "futebol"), - Pair("Game", "game"), - Pair("Girl battleships", "girl-battleships"), - Pair("Gourmet", "gourmet"), - Pair("Gundam", "gundam"), - Pair("Harém", "harem"), - Pair("Hentai", "hentai"), - Pair("Historia", "historia"), - Pair("Historial", "historial"), - Pair("Historical", "historical"), - Pair("Histórico", "historico"), - Pair("Horror", "horror"), - Pair("Humor Negro", "humor-negro"), - Pair("Ídolo", "idolo"), - Pair("Infantis", "infantis"), - Pair("Investigação", "investigacao"), - Pair("Isekai", "isekai"), - Pair("Jogo", "jogo"), - Pair("Jogos", "jogos"), - Pair("Josei", "josei"), - Pair("Kids", "kids"), - Pair("Luta", "luta"), - Pair("Maduro", "maduro"), - Pair("Máfia", "mafia"), - Pair("Magia", "magia"), - Pair("Mágica", "magica"), - Pair("Mecha", "mecha"), - Pair("Militar", "militar"), - Pair("Militares", "militares"), - Pair("Mistério", "misterio"), - Pair("Música", "musica"), - Pair("Musical", "musical"), - Pair("Não Informado!", "nao-informado"), - Pair("Paródia", "parodia"), - Pair("Piratas", "piratas"), - Pair("Polícia", "policia"), - Pair("Policial", "policial"), - Pair("Político", "politico"), - Pair("Pós-Apocalíptico", "pos-apocaliptico"), - Pair("Psico", "psico"), - Pair("Psicológico", "psicologico"), - Pair("Romance", "romance"), - Pair("Samurai", "samurai"), - Pair("Samurais", "samurais"), - Pair("Sátiro", "satiro"), - Pair("School Life", "school-life"), - Pair("SciFi", "scifi"), - Pair("Sci-Fi", "sci-fi"), - Pair("Seinen", "seinen"), - Pair("Shotacon", "shotacon"), - Pair("Shoujo", "shoujo"), - Pair("Shoujo Ai", "shoujo-ai"), - Pair("Shounem", "shounem"), - Pair("Shounen", "shounen"), - Pair("Shounen-ai", "shounen-ai"), - Pair("Slice of Life", "slice-of-life"), - Pair("Sobrenatural", "sobrenatural"), - Pair("Space", "space"), - Pair("Supernatural", "supernatural"), - Pair("Super Poder", "super-poder"), - Pair("Super-Poderes", "super-poderes"), - Pair("Suspense", "suspense"), - Pair("tear-studio", "tear-studio"), - Pair("Terror", "terror"), - Pair("Thriller", "thriller"), - Pair("Tragédia", "tragedia"), - Pair("Vampiro", "vampiro"), - Pair("Vampiros", "vampiros"), - Pair("Vida Escolar", "vida-escolar"), - Pair("Yaoi", "yaoi"), - Pair("Yuri", "yuri"), - Pair("Zombie", "zombie"), - ) - } -} diff --git a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/AnimesTC.kt b/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/AnimesTC.kt deleted file mode 100644 index 1f0330d7..00000000 --- a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/AnimesTC.kt +++ /dev/null @@ -1,294 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animestc - -import android.app.Application -import androidx.preference.ListPreference -import androidx.preference.PreferenceScreen -import eu.kanade.tachiyomi.animeextension.pt.animestc.dto.AnimeDto -import eu.kanade.tachiyomi.animeextension.pt.animestc.dto.EpisodeDto -import eu.kanade.tachiyomi.animeextension.pt.animestc.dto.ResponseDto -import eu.kanade.tachiyomi.animeextension.pt.animestc.dto.VideoDto -import eu.kanade.tachiyomi.animeextension.pt.animestc.extractors.LinkBypasser -import eu.kanade.tachiyomi.animeextension.pt.animestc.extractors.SendcmExtractor -import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource -import eu.kanade.tachiyomi.animesource.model.AnimeFilterList -import eu.kanade.tachiyomi.animesource.model.AnimesPage -import eu.kanade.tachiyomi.animesource.model.SAnime -import eu.kanade.tachiyomi.animesource.model.SEpisode -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.animesource.online.AnimeHttpSource -import eu.kanade.tachiyomi.lib.googledriveextractor.GoogleDriveExtractor -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.network.awaitSuccess -import eu.kanade.tachiyomi.util.asJsoup -import eu.kanade.tachiyomi.util.parallelCatchingFlatMapBlocking -import eu.kanade.tachiyomi.util.parseAs -import kotlinx.serialization.json.Json -import okhttp3.HttpUrl.Companion.toHttpUrl -import okhttp3.Request -import okhttp3.Response -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get -import uy.kohesive.injekt.injectLazy -import java.text.SimpleDateFormat -import java.util.Locale - -class AnimesTC : ConfigurableAnimeSource, AnimeHttpSource() { - - override val name = "AnimesTC" - - override val baseUrl = "https://api2.animestc.com" - - override val lang = "pt-BR" - - override val supportsLatest = true - - override fun headersBuilder() = super.headersBuilder() - .add("Referer", "$HOST_URL/") - - private val preferences by lazy { - Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000) - } - - private val json: Json by injectLazy() - - // ============================== Popular =============================== - override fun popularAnimeRequest(page: Int) = GET("$baseUrl/series?order=id&direction=asc&page=1&top=true", headers) - - override fun popularAnimeParse(response: Response): AnimesPage { - val data = response.parseAs<List<AnimeDto>>() - val animes = data.map(::searchAnimeFromObject) - return AnimesPage(animes, false) - } - - // =============================== Latest =============================== - override fun latestUpdatesRequest(page: Int) = GET(HOST_URL, headers) - - override fun latestUpdatesParse(response: Response): AnimesPage { - val doc = response.asJsoup() - val animes = doc.select("div > article.episode").map { - SAnime.create().apply { - val ahref = it.selectFirst("h3 > a.episode-info-title-orange")!! - title = ahref.text() - val slug = ahref.attr("href").substringAfterLast("/") - setUrlWithoutDomain("/series?slug=$slug") - thumbnail_url = it.selectFirst("img.episode-image")?.attr("abs:data-src") - } - } - .filter { it.thumbnail_url?.contains("/_nuxt/img/") == false } - .distinctBy { it.url } - - return AnimesPage(animes, false) - } - - // =============================== Search =============================== - override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList): Request { - val params = ATCFilters.getSearchParameters(filters) - val url = "$baseUrl/series?order=title&direction=asc&page=$page".toHttpUrl() - .newBuilder() - .addQueryParameter("type", params.type) - .addQueryParameter("search", query) - .addQueryParameter("year", params.year) - .addQueryParameter("releaseStatus", params.status) - .addQueryParameter("tag", params.genre) - .build() - - return GET(url, headers) - } - - override fun searchAnimeParse(response: Response): AnimesPage { - val data = response.parseAs<ResponseDto<AnimeDto>>() - val animes = data.items.map(::searchAnimeFromObject) - val hasNextPage = data.lastPage > data.page - return AnimesPage(animes, hasNextPage) - } - - override suspend fun getSearchAnime(page: Int, query: String, filters: AnimeFilterList): AnimesPage { - return if (query.startsWith(PREFIX_SEARCH)) { // URL intent handler - val slug = query.removePrefix(PREFIX_SEARCH) - client.newCall(GET("$baseUrl/series?slug=$slug")) - .awaitSuccess() - .use(::searchAnimeBySlugParse) - } else { - return super.getSearchAnime(page, query, filters) - } - } - - override fun getFilterList(): AnimeFilterList = ATCFilters.FILTER_LIST - - private fun searchAnimeFromObject(anime: AnimeDto) = SAnime.create().apply { - thumbnail_url = anime.cover.url - title = anime.title - setUrlWithoutDomain("/series/${anime.id}") - } - - private fun searchAnimeBySlugParse(response: Response): AnimesPage { - val details = animeDetailsParse(response).apply { - setUrlWithoutDomain(response.request.url.toString()) - initialized = true - } - - return AnimesPage(listOf(details), false) - } - - // =========================== Anime Details ============================ - override fun animeDetailsParse(response: Response) = SAnime.create().apply { - val anime = response.getAnimeDto() - setUrlWithoutDomain("/series/${anime.id}") - title = anime.title - status = anime.status - thumbnail_url = anime.cover.url - artist = anime.producer - genre = anime.genres - description = buildString { - append(anime.synopsis + "\n") - - anime.classification?.also { append("\nClassificação: ", it, " anos") } - anime.year?.also { append("\nAno de lançamento: ", it) } - } - } - - // ============================== Episodes ============================== - override fun episodeListParse(response: Response): List<SEpisode> { - val id = response.getAnimeDto().id - return getEpisodeList(id) - } - - private fun episodeListRequest(animeId: Int, page: Int) = - GET("$baseUrl/episodes?order=id&direction=desc&page=$page&seriesId=$animeId&specialOrder=true") - - private fun getEpisodeList(animeId: Int, page: Int = 1): List<SEpisode> { - val response = client.newCall(episodeListRequest(animeId, page)).execute() - val parsed = response.parseAs<ResponseDto<EpisodeDto>>() - val episodes = parsed.items.map(::episodeFromObject) - - if (parsed.page < parsed.lastPage) { - return episodes + getEpisodeList(animeId, page + 1) - } else { - return episodes - } - } - - private fun episodeFromObject(episode: EpisodeDto) = SEpisode.create().apply { - name = episode.title - setUrlWithoutDomain("/episodes?slug=${episode.slug}") - episode_number = episode.number.toFloat() - date_upload = episode.created_at.toDate() - } - - // ============================ Video Links ============================= - private val sendcmExtractor by lazy { SendcmExtractor(client) } - private val gdriveExtractor by lazy { GoogleDriveExtractor(client, headers) } - private val linkBypasser by lazy { LinkBypasser(client, json) } - - private val supportedPlayers = listOf("send", "drive") - - override fun videoListParse(response: Response): List<Video> { - val videoDto = response.parseAs<ResponseDto<VideoDto>>().items.first() - val links = videoDto.links - - val allLinks = listOf(links.low, links.medium, links.high).flatten() - .filter { it.name in supportedPlayers } - - val online = links.online?.run { - filterNot { "mega" in it }.map { - Video(it, "Player ATC", it, headers) - } - }.orEmpty() - - val videoId = videoDto.id - - return online + allLinks.parallelCatchingFlatMapBlocking { extractVideosFromLink(it, videoId) } - } - - private fun extractVideosFromLink(video: VideoDto.VideoLink, videoId: Int): List<Video> { - val playerUrl = linkBypasser.bypass(video, videoId) - ?: return emptyList() - - val quality = when (video.quality) { - "low" -> "SD" - "medium" -> "HD" - "high" -> "FULLHD" - else -> "SD" - } - - return when (video.name) { - "send" -> sendcmExtractor.videosFromUrl(playerUrl, quality) - "drive" -> { - val id = GDRIVE_REGEX.find(playerUrl)?.groupValues?.get(0) ?: return emptyList() - gdriveExtractor.videosFromUrl(id, "GDrive - $quality") - } - else -> emptyList() - } - } - - // ============================== Settings ============================== - override fun setupPreferenceScreen(screen: PreferenceScreen) { - ListPreference(screen.context).apply { - key = PREF_QUALITY_KEY - title = PREF_QUALITY_TITLE - entries = PREF_QUALITY_ENTRIES - entryValues = PREF_QUALITY_ENTRIES - setDefaultValue(PREF_QUALITY_DEFAULT) - summary = "%s" - }.also(screen::addPreference) - - ListPreference(screen.context).apply { - key = PREF_PLAYER_KEY - title = PREF_PLAYER_TITLE - entries = PREF_PLAYER_VALUES - entryValues = PREF_PLAYER_VALUES - setDefaultValue(PREF_PLAYER_DEFAULT) - summary = "%s" - }.also(screen::addPreference) - } - - // ============================= Utilities ============================== - private fun Response.getAnimeDto(): AnimeDto { - val jsonString = body.string() - return try { - jsonString.parseAs<AnimeDto>() - } catch (e: Exception) { - // URL intent handler moment - jsonString.parseAs<ResponseDto<AnimeDto>>().items.first() - } - } - - private fun String.toDate(): Long { - return try { - DATE_FORMATTER.parse(this)?.time - } catch (_: Throwable) { null } ?: 0L - } - - override fun List<Video>.sort(): List<Video> { - val quality = preferences.getString(PREF_QUALITY_KEY, PREF_QUALITY_DEFAULT)!! - val player = preferences.getString(PREF_PLAYER_KEY, PREF_PLAYER_DEFAULT)!! - return sortedWith( - compareBy( - { it.quality.contains(player) }, - { it.quality.contains("- $quality") }, - ), - ).reversed() - } - - companion object { - private val DATE_FORMATTER by lazy { - SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.ENGLISH) - } - - const val PREFIX_SEARCH = "slug:" - - private const val HOST_URL = "https://www.animestc.net" - - private const val PREF_QUALITY_KEY = "pref_quality" - private const val PREF_QUALITY_TITLE = "Qualidade preferida" - private const val PREF_QUALITY_DEFAULT = "HD" - private val PREF_QUALITY_ENTRIES = arrayOf("SD", "HD", "FULLHD") - - private const val PREF_PLAYER_KEY = "pref_player" - private const val PREF_PLAYER_TITLE = "Player preferido" - private const val PREF_PLAYER_DEFAULT = "Sendcm" - private val PREF_PLAYER_VALUES = arrayOf("Sendcm", "GDrive", "Player ATC") - - private val GDRIVE_REGEX = Regex("[\\w-]{28,}") - } -} diff --git a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/AnimesTCUrlActivity.kt b/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/AnimesTCUrlActivity.kt deleted file mode 100644 index 9fc85460..00000000 --- a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/AnimesTCUrlActivity.kt +++ /dev/null @@ -1,41 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animestc - -import android.app.Activity -import android.content.ActivityNotFoundException -import android.content.Intent -import android.os.Bundle -import android.util.Log -import kotlin.system.exitProcess - -/** - * Springboard that accepts https://wwww.animestc.net/animes/<item> intents - * and redirects them to the main Aniyomi process. - */ -class AnimesTCUrlActivity : Activity() { - - private val tag = javaClass.simpleName - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - val pathSegments = intent?.data?.pathSegments - if (pathSegments != null && pathSegments.size > 1) { - val item = pathSegments[1] - val mainIntent = Intent().apply { - action = "eu.kanade.tachiyomi.ANIMESEARCH" - putExtra("query", "${AnimesTC.PREFIX_SEARCH}$item") - putExtra("filter", packageName) - } - - try { - startActivity(mainIntent) - } catch (e: ActivityNotFoundException) { - Log.e(tag, e.toString()) - } - } else { - Log.e(tag, "could not parse uri from intent $intent") - } - - finish() - exitProcess(0) - } -} diff --git a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/dto/AnimesTCDto.kt b/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/dto/AnimesTCDto.kt deleted file mode 100644 index e8de368d..00000000 --- a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/dto/AnimesTCDto.kt +++ /dev/null @@ -1,78 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animestc.dto - -import eu.kanade.tachiyomi.animesource.model.SAnime -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable - -@Serializable -data class ResponseDto<T>( - @SerialName("data") - val items: List<T>, - val lastPage: Int, - val page: Int, -) - -@Serializable -data class AnimeDto( - val classification: String?, - val cover: CoverDto, - val id: Int, - val producer: String?, - val releaseStatus: String, - val synopsis: String, - val tags: List<TagDto>, - val title: String, - val year: Int?, -) { - val status by lazy { - when (releaseStatus) { - "complete" -> SAnime.COMPLETED - "airing" -> SAnime.ONGOING - else -> SAnime.UNKNOWN - } - } - - val genres by lazy { tags.joinToString(", ") { it.name } } - - @Serializable - data class TagDto(val name: String) -} - -@Serializable -data class EpisodeDto( - @SerialName("seriesId") - val animeId: Int, - val cover: CoverDto?, - val created_at: String, - val number: String, - val slug: String, - val title: String, -) - -@Serializable -data class VideoDto( - val id: Int, - val links: VideoLinksDto, -) { - @Serializable - data class VideoLinksDto( - val low: List<VideoLink> = emptyList(), - val medium: List<VideoLink> = emptyList(), - val high: List<VideoLink> = emptyList(), - val online: List<String>? = null, - ) - - @Serializable - data class VideoLink( - val index: Int, - val name: String, - val quality: String, - ) -} - -@Serializable -data class CoverDto( - val originalName: String, -) { - val url by lazy { "https://stc.animestc.com/$originalName" } -} diff --git a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/extractors/LinkBypasser.kt b/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/extractors/LinkBypasser.kt deleted file mode 100644 index afd58a59..00000000 --- a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/extractors/LinkBypasser.kt +++ /dev/null @@ -1,42 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animestc.extractors - -import android.util.Base64 -import eu.kanade.tachiyomi.animeextension.pt.animestc.dto.VideoDto.VideoLink -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.util.asJsoup -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.Json -import okhttp3.OkHttpClient - -class LinkBypasser( - private val client: OkHttpClient, - private val json: Json, -) { - fun bypass(video: VideoLink, episodeId: Int): String? { - val joined = "$episodeId/${video.quality}/${video.index}" - val encoded = Base64.encodeToString(joined.toByteArray(), Base64.NO_WRAP) - val url = "$PROTECTOR_URL/link/$encoded" - val res = client.newCall(GET(url)).execute() - if (res.code != 200) { - return null - } - - // Sadly we MUST wait 6s or we are going to get a HTTP 500 - Thread.sleep(6000L) - val id = res.asJsoup().selectFirst("meta#link-id")!!.attr("value") - val apiCall = client.newCall(GET("$PROTECTOR_URL/api/link/$id")).execute() - if (apiCall.code != 200) { - return null - } - - val apiBody = apiCall.body.string() - return json.decodeFromString<LinkDto>(apiBody).link - } - - @Serializable - data class LinkDto(val link: String) - - companion object { - private const val PROTECTOR_URL = "https://protetor.animestc.xyz" - } -} diff --git a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/extractors/SendcmExtractor.kt b/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/extractors/SendcmExtractor.kt deleted file mode 100644 index c422c543..00000000 --- a/src/pt/animestc/src/eu/kanade/tachiyomi/animeextension/pt/animestc/extractors/SendcmExtractor.kt +++ /dev/null @@ -1,20 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animestc.extractors - -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.util.asJsoup -import okhttp3.Headers -import okhttp3.OkHttpClient - -class SendcmExtractor(private val client: OkHttpClient) { - private val playerName = "Sendcm" - - fun videosFromUrl(url: String, quality: String): List<Video> { - val doc = client.newCall(GET(url)).execute().asJsoup() - val videoUrl = doc.selectFirst("video#vjsplayer > source")?.attr("src") - return videoUrl?.let { - val headers = Headers.headersOf("Referer", url) - listOf(Video(it, "$playerName - $quality", it, headers = headers)) - }.orEmpty() - } -} diff --git a/src/pt/animeszone/AndroidManifest.xml b/src/pt/animeszone/AndroidManifest.xml deleted file mode 100644 index bc031e78..00000000 --- a/src/pt/animeszone/AndroidManifest.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<manifest xmlns:android="http://schemas.android.com/apk/res/android"> - - <application> - <activity - android:name=".pt.animeszone.AZUrlActivity" - android:excludeFromRecents="true" - android:exported="true" - android:theme="@android:style/Theme.NoDisplay"> - <intent-filter> - <action android:name="android.intent.action.VIEW" /> - - <category android:name="android.intent.category.DEFAULT" /> - <category android:name="android.intent.category.BROWSABLE" /> - - <data - android:host="animeszone.net" - android:pathPattern="/..*/..*" - android:scheme="https" /> - </intent-filter> - </activity> - </application> -</manifest> diff --git a/src/pt/animeszone/build.gradle b/src/pt/animeszone/build.gradle deleted file mode 100644 index 2bcfcb39..00000000 --- a/src/pt/animeszone/build.gradle +++ /dev/null @@ -1,12 +0,0 @@ -ext { - extName = 'AnimesZone' - extClass = '.AnimesZone' - extVersionCode = 12 - isNsfw = true -} - -apply from: "$rootDir/common.gradle" - -dependencies { - implementation(project(':lib:dood-extractor')) -} diff --git a/src/pt/animeszone/res/mipmap-hdpi/ic_launcher.png b/src/pt/animeszone/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index 2d1732e1038442c498febdf35ab362db6d5efdb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4334 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 diff --git a/src/pt/animeszone/res/mipmap-mdpi/ic_launcher.png b/src/pt/animeszone/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index 0fb7c62e0ef0e5efb027b04f4b1b8cb1b5b8fbfd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2303 zcmV<b2mtqqP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm000QaNkl<ZXhZE< z3s6+o8UFUcQ$&{qMR~|W(Ztj=(}pIUn9ig#ooHeNL<CGEhKVAOh~OiQ)YwRBjl@*J zBqr5Z6$r%#0)a`5X=^8KIzu{Xd|<56M4P0Du%ZYou)F=wxqEl--o3lrg-)5w<ig?Z zo_p^(|M&mj|2XHO!MFU-e9Ps>cL2uPg5E5^u4(OUtmL%WC$`d=HMc_%!0g$xLxMv> zx0uc592;x~*o1NHC*e$uuJI2-zwAt%{Ho(waSYe9V{Cr6a}L&Tm);Z*;8)#k>e|rW z-hNw-KnZ|;&fWLCa=W+pSz$oA@XCVl>Dccu0<-JlJ)VSD8Y3h$<c%wrK7WQp8j^yL z17P2SlV;s{)nc(2<ifiG@&H5vz-bxZw66p}r_<i-X#XaPWMEbhspS@h7yv`!jG3Jd zExAy~SM7_`@*RL21RJUAdb^QMCT{?k(}pEXPwH^tqXL(GwT9CD0?$=al<qZkUW;Hj zs5u;3P9X;X(P5<%`zG|rweM*j)d1oX1q%!(yc$6MdOa*wD+Y%I-y4Yoi_iE3z|{vF zKI0TXfmW_gPvjuMi&n0{xwg;n-l;#k0q})B>|xaa;u2<fwSXd@Wq@opD`v#T;z<2b z{QHY5Sn~KXbobm6%_@NLf&ab%h@al!)VXIWd7}_W`>$@_hDDi~^l=C;m2Sox2M+vy z08AqQN<J{0Plyz<lJIkr@5S$`4k92h5H<=GUw!!{Qc}|Kb$k1Ww9m%A(bb_Y3dP1H zIskZcW+gyuq5z!^?^GW`^8NRNWg3k}L%w6h-q-hFQ`xUz^)Y;k^Na|9SR$weVzCS% zD<u`%cJ6?mUWbe4FTfCPM3~VCQ&$(V7iZ#=^KEvAcBQ90aLALHY5*~D34#SAjvyV} z6O|Zs!VMG9*w}#BX>sW9>qSoHQrvyd_wn2drO=W!PPUxDQ+at9ps?yJ4u>yG*qrJC zOtS-!#%;R^yoFb*#e(Nc)*ydP5iv)Dh9gI@YV~T23k*PWQxm4&F$;qO1IW*P8cioZ za0#oPv@cbbY5>u(@m_sEnfq2G#>Aq&p&nroMqKZ>j*PU$X#4yk2Fzxp%zGGn-rftn zpC8Wt;}fK1WTE?ZkE-fb<l7C?b#+cG1>jB{S8j>dEklFId-6$adT9%H(u(p|vAv># zCo|?35r&C4Maj$%5stpwy+}`8gpW_3QM7`Rm04f6S^!ZoaS9et7F@Ij0}v4whL)Ch zVeTi5llD7JtnQ-9%W6SMK>><4{+#?kgO=lsc)FkvLqs`mxkT>7J_B$TbjqcK%jB%y z889Pv*%Rcv{rLUy20?fVpNTOsXn3~~#_({8L?)yxOvU+&7gY%_okKN%snN^=uDMuF zC2?TZKli?5e0ugAOgFlD=+tPmT)RRDwqaNKb}Y`$;!)?V%H7zs_1BzQb7sv%NJt1i zZ2fpxUtsh30AQMZJs>YA+~f8XqRr9z!>HbW2$lQxxfFXAqRs=!$*8KWL10i2u3ox? zM;D~xKb;-$)9O&Qe=kDDjmP4wrMT7K=LSNuF6I-f1~4TmcGxJy=|Rp}w()r^&(A{_ zl?dr+8Mr_tgQ$5{O4l4bfFJ+lLGlADHWaVJf!bPn&VsZ@=VSMqdw8ZUUHcq<TUF&k zDS4zD5dbCHIH_aBT}eqeeC!B9Cr%*8?MK#<Y<$$(DsZ2K%t%>?9hJMF*ZZUOZyzBu z`*GZ&<Tf-ofaOcGuzlxmc$sna@)uaJAO&AtyXI~M!RWqOAaZKVuolpgp7+1?CVo0^ z9@pZrnpzaC-+)1~3IiS%8j42B35he4cvQ++`UL*?;a~YR7O{c@{L$QS9N+ul56B;E zczgG2*zjT*55aQkj0k`y?Tgxd?BSoGa?k4s3=Be7M+Z__WVw8qJ1WzD>DpqfUcXKN zS6hdIH6@N!8KcvHxgYZ%dI(i@wb1+fqnqla%+z%J{mdB`Kav<gy$?*D676OI=jN6T zq2q#4fAk3Mm~$5&f9KYhv8|#~s4^*R##7jAZf=5+l9s8ni-SA+FW0a+M3&ML(1ZK- zVt#50ALsp+_poevF8awrN{4DE<^ZItddX-ktCkexW9=_CQc}|5Qd=7qF3LcMiS2gK zK>#Xulp{SWlYgzNszKS-ZCtCI9gbBP)%V>ukPsb>rav@ef*}lp<^dGuu0&l+^C$sC zM!8r(I%z^w6dIZu5FQ!Hxm>iW0Ci2mge>DenEWFgs;x#)a4_%d@9jk&HCb8#ZChg1 zid8sq>QC6Z`2`e~6mz<L_RrIJBsC3P-8bDpsJ6hQ$f@oW;>soMzEX}w*@AZea^fU% zR^*|VA`nxrKP9ol@6_PFxexH@;`y+l=~x4vTFIX6!z8McJ~;V4ViV$N2g8P!x0Ip0 zVz(T#dLNJj5CVf02{F;Atk{L|ls)~lS`-!)qxI9%4(;DN`%bK1w+=eJpMA?uQi3?p z(CUnSHg0|q=Pq2}4nII8NY0WBJVRx;)nY~GH(w*S@L6<HW|tnSEf6u;-2yCfu!Xvw zw9E=Je~RtBgJyx(^oL(3kXkOfopg5jrK>vjS*N4DBFQE%^DAcEK#E3WI_N1&n^`F$ z^TQDXP}-*y*15{{lCxjja_8Rdy26w3OFEV(`l$vGK52@g4{$L&L?=%xHMeK@f_`Mj zhyZv?Xx`SzN?^T>r3R8}0LF+&pDf_1)OH9p3a$I<#LNT3j1iM5ZE7ZZql~9(!&ya* zraj!#Ll%gmYb;}W++Jq@LPNuhJM~(9j(i|B{1=}YEnVbu(;K7eo|~q8>Sr0w;~N_G zTp+dR&<Vz0(rcZ^=yQlir&FMYd?RcW8W$h!p%C3d!k1FV6>5|<orhAoWPL%@4AjO` z^ZOqNF`6M*W!Gb;PM?%MY*0`6p7rbPjlH!Q%Y*Tqy&YlAjSS!YtHD^B#v6skS}xV| Z{}=X-1Dbx=9wYz&002ovPDHLkV1kfiYw`d9 diff --git a/src/pt/animeszone/res/mipmap-xhdpi/ic_launcher.png b/src/pt/animeszone/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index be1ee581178c9e5f7367056ea8d0dfecfa089c77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6205 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 beEI(aMq^)Z$JwB000000NkvXXu0mjf`wskC diff --git a/src/pt/animeszone/res/mipmap-xxhdpi/ic_launcher.png b/src/pt/animeszone/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index 489695ae704ac23fc9312f102098eeaa32f1c68c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11608 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 WU$KDPO1IPi0000<MNUMnLSTX}T}VCv diff --git a/src/pt/animeszone/res/mipmap-xxxhdpi/ic_launcher.png b/src/pt/animeszone/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index 39fb67695753d4d7d8f672150345e3befc69edf6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17786 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 Fe*sQFa9aQX diff --git a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AZUrlActivity.kt b/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AZUrlActivity.kt deleted file mode 100644 index e701aadf..00000000 --- a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AZUrlActivity.kt +++ /dev/null @@ -1,42 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animeszone - -import android.app.Activity -import android.content.ActivityNotFoundException -import android.content.Intent -import android.os.Bundle -import android.util.Log -import kotlin.system.exitProcess - -/** - * Springboard that accepts https://animeszone.net/<type>/<slug> intents - * and redirects them to the main Aniyomi process. - */ -class AZUrlActivity : Activity() { - - private val tag = javaClass.simpleName - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - val pathSegments = intent?.data?.pathSegments - if (pathSegments != null && pathSegments.size > 1) { - val searchQuery = "${pathSegments[0]}/${pathSegments[1]}" - - val mainIntent = Intent().apply { - action = "eu.kanade.tachiyomi.ANIMESEARCH" - putExtra("query", "${AnimesZone.PREFIX_SEARCH}$searchQuery") - putExtra("filter", packageName) - } - - try { - startActivity(mainIntent) - } catch (e: ActivityNotFoundException) { - Log.e(tag, e.toString()) - } - } else { - Log.e(tag, "could not parse uri from intent $intent") - } - - finish() - exitProcess(0) - } -} diff --git a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AnimesZone.kt b/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AnimesZone.kt deleted file mode 100644 index 04f40496..00000000 --- a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AnimesZone.kt +++ /dev/null @@ -1,439 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animeszone - -import android.app.Application -import androidx.preference.ListPreference -import androidx.preference.PreferenceScreen -import app.cash.quickjs.QuickJs -import eu.kanade.tachiyomi.animeextension.pt.animeszone.extractors.BloggerJWPlayerExtractor -import eu.kanade.tachiyomi.animeextension.pt.animeszone.extractors.PlaylistExtractor -import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource -import eu.kanade.tachiyomi.animesource.model.AnimeFilterList -import eu.kanade.tachiyomi.animesource.model.AnimesPage -import eu.kanade.tachiyomi.animesource.model.SAnime -import eu.kanade.tachiyomi.animesource.model.SEpisode -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource -import eu.kanade.tachiyomi.lib.doodextractor.DoodExtractor -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.network.POST -import eu.kanade.tachiyomi.network.awaitSuccess -import eu.kanade.tachiyomi.util.asJsoup -import eu.kanade.tachiyomi.util.parseAs -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.Json -import okhttp3.MediaType.Companion.toMediaType -import okhttp3.Request -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.Response -import org.jsoup.Jsoup -import org.jsoup.nodes.Document -import org.jsoup.nodes.Element -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get -import uy.kohesive.injekt.injectLazy - -class AnimesZone : ConfigurableAnimeSource, ParsedAnimeHttpSource() { - - override val name = "AnimesZone" - - override val baseUrl = "https://animeszone.net" - - override val lang = "pt-BR" - - override val supportsLatest = true - - override fun headersBuilder() = super.headersBuilder() - .add("Referer", "$baseUrl/") - .add("Origin", baseUrl) - - private val json: Json by injectLazy() - - private val preferences by lazy { - Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000) - } - - // ============================== Popular =============================== - override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/tendencia/") - - override fun popularAnimeSelector(): String = "div.items > div.seriesList" - - override fun popularAnimeNextPageSelector(): String? = null - - override fun popularAnimeFromElement(element: Element) = SAnime.create().apply { - setUrlWithoutDomain(element.selectFirst("a[href]")!!.attr("abs:href")) - thumbnail_url = element.selectFirst("div.cover-image")?.run { - attr("style").substringAfter("url('").substringBefore("'") - } - title = element.selectFirst("span.series-title")!!.text() - } - - // =============================== Latest =============================== - override fun latestUpdatesRequest(page: Int): Request { - return if (page == 1) { - GET("$baseUrl/animes-legendados/") - } else { - GET("$baseUrl/animes-legendados/page/$page/") - } - } - - override fun latestUpdatesSelector(): String = "main#list-animes ul.post-lst > li" - - override fun latestUpdatesNextPageSelector(): String = "div.paginadorplay > a.active + a" - - override fun latestUpdatesFromElement(element: Element) = SAnime.create().apply { - setUrlWithoutDomain(element.selectFirst("div.aniItem > a[href]")!!.attr("abs:href")) - thumbnail_url = element.selectFirst("div.aniItemImg img[src]")?.attr("abs:src") - title = element.selectFirst("h2.aniTitulo")!!.text() - } - - // =============================== Search =============================== - override suspend fun getSearchAnime(page: Int, query: String, filters: AnimeFilterList): AnimesPage { - return if (query.startsWith(PREFIX_SEARCH)) { - val path = query.removePrefix(PREFIX_SEARCH) - client.newCall(GET("$baseUrl/$path")) - .awaitSuccess() - .use(::searchAnimeByIdParse) - } else { - super.getSearchAnime(page, query, filters) - } - } - - private fun searchAnimeByIdParse(response: Response): AnimesPage { - val details = animeDetailsParse(response).apply { - setUrlWithoutDomain(response.request.url.toString()) - initialized = true - } - - return AnimesPage(listOf(details), false) - } - - override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList): Request { - val params = AnimesZoneFilters.getSearchParameters(filters) - - val cleanQuery = query.replace(" ", "%20") - val queryQuery = if (query.isBlank()) { - "" - } else { - "&_pesquisa=$cleanQuery" - } - val url = "$baseUrl/?s=${params.genre}${params.year}${params.version}${params.studio}${params.type}${params.adult}$queryQuery" - - val httpParams = url.substringAfter("$baseUrl/?").split("&").joinToString(",") { - val (key, value) = it.split("=", limit = 2) - "\"$key\":\"$value\"" - } - val softRefresh = if (page == 1) 0 else 1 - val jsonBody = """ - { - "action":"facetwp_refresh", - "data":{ - "facets":{ - "generos":[ - ${queryToJsonList(params.genre)} - ], - "versao":[ - ${queryToJsonList(params.year)} - ], - "tipo":[ - ${queryToJsonList(params.version)} - ], - "estudio":[ - ${queryToJsonList(params.studio)} - ], - "tipototal":[ - ${queryToJsonList(params.type)} - ], - "adulto":[ - ${queryToJsonList(params.adult)} - ], - "pesquisa":"$query", - "paginar":[ - - ] - }, - "frozen_facets":{ - - }, - "http_params":{ - "get":{ - $httpParams - }, - "uri":"", - "url_vars":[ - - ] - }, - "template":"wp", - "extras":{ - "sort":"default" - }, - "soft_refresh":$softRefresh, - "is_bfcache":1, - "first_load":0, - "paged":$page - } - } - """.trimIndent().toRequestBody("application/json".toMediaType()) - - return POST(url, headers, jsonBody) - } - - override fun searchAnimeParse(response: Response): AnimesPage { - val parsed = response.parseAs<PostResponse>() - - val document = Jsoup.parse(parsed.template) - - val animes = document.select(searchAnimeSelector()).map(::searchAnimeFromElement) - - val hasNextPage = parsed.settings.pager.run { page < total_pages } - - return AnimesPage(animes, hasNextPage) - } - - override fun searchAnimeSelector(): String = "div.aniItem" - - override fun searchAnimeNextPageSelector(): String? = null - - override fun searchAnimeFromElement(element: Element) = SAnime.create().apply { - setUrlWithoutDomain(element.selectFirst("a[href]")!!.attr("href")) - thumbnail_url = element.selectFirst("img[src]")?.attr("abs:src") - title = element.selectFirst("div.aniInfos")?.text() ?: "Anime" - } - - // ============================== FILTERS =============================== - override fun getFilterList(): AnimeFilterList = AnimesZoneFilters.FILTER_LIST - - // =========================== Anime Details ============================ - override fun animeDetailsParse(document: Document) = SAnime.create().apply { - title = document.selectFirst("div.container > div div.bottom-div > h4")?.ownText() - ?: document.selectFirst("div#info > h1")?.text() - ?: "Anime" - thumbnail_url = document.selectFirst("div.container > div > img[src]")?.attr("abs:src") - description = document.selectFirst("section#sinopse p:matches(.)")?.text() - ?: document.selectFirst("div.content.right > dialog > p:matches(.)")?.text() - genre = document.select("div.card-body table > tbody > tr:has(>td:contains(Genres)) td > a").joinToString { it.text() } - } - - // ============================== Episodes ============================== - override fun episodeListParse(response: Response): List<SEpisode> { - val document = response.asJsoup() - - val singleVideo = document.selectFirst("div.anime__video__player") - - // First check if single episode - return if (singleVideo != null) { - SEpisode.create().apply { - name = document.selectFirst("div#info h1")?.text() ?: "Episódio" - episode_number = 1F - setUrlWithoutDomain(document.location()) - }.let(::listOf) - } else { - buildList { - document.select(episodeListSelector()).forEach { ep -> - val name = ep.selectFirst("h2.aniTitulo")?.text()?.trim() - // Check if it's multi-season - var nextPageUrl = when { - name != null && name.startsWith("temporada ", true) -> ep.selectFirst("a[href]")!!.attr("href") - else -> { - add(episodeFromElement(ep, size + 1)) - document.nextPageUrl() - } - } - - while (nextPageUrl != null) { - val seasonDocument = client.newCall(GET(nextPageUrl)).execute() - .asJsoup() - - seasonDocument.select(episodeListSelector()).forEach { seasonEp -> - add(episodeFromElement(seasonEp, size + 1, name)) - } - - nextPageUrl = seasonDocument.nextPageUrl() - } - } - - reverse() - } - } - } - - private fun Document.nextPageUrl() = selectFirst("div.paginadorplay > a:contains(Próxima Pagina)")?.absUrl("href") - - override fun episodeListSelector(): String = "main.site-main ul.post-lst > li" - - private fun episodeFromElement(element: Element, counter: Int, info: String? = null): SEpisode { - val epTitle = element.selectFirst("div.title")?.text() ?: element.text() - val epNumber = element.selectFirst("span.epiTipo") - - return SEpisode.create().apply { - name = "Ep. ${epNumber?.text()?.trim() ?: counter} - ${epTitle.replace(EPISODE_REGEX, "")}" - .replace(" - - ", " - ") - episode_number = epNumber?.run { - text().trim().toFloatOrNull() - } ?: counter.toFloat() - scanlator = info - setUrlWithoutDomain(element.selectFirst("article > a")!!.attr("href")) - } - } - - override fun episodeFromElement(element: Element): SEpisode = throw UnsupportedOperationException() - - // ============================ Video Links ============================= - override fun videoListParse(response: Response): List<Video> { - val document = response.asJsoup() - - val videoList = document.select("div#playeroptions li[data-post]").flatMap { vid -> - val jsonHeaders = headersBuilder() - .add("Accept", "application/json, text/javascript, */*; q=0.01") - .add("X-Requested-With", "XMLHttpRequest") - .build() - - val post = vid.attr("data-post") - val type = vid.attr("data-type") - val nume = vid.attr("data-nume") - - val apires = client.newCall( - GET("$baseUrl/wp-json/dooplayer/v2/$post/$type/$nume", jsonHeaders), - ).execute() - - val url = apires.parseAs<VideoResponse>().embed_url - - when { - url.startsWith("https://dood") -> DoodExtractor(client).videosFromUrl(url, vid.text().trim()) - "https://gojopoolt" in url -> { - client.newCall(GET(url, headers)).execute() - .asJsoup() - .selectFirst("script:containsData(sources:)") - ?.data() - ?.let(BloggerJWPlayerExtractor::videosFromScript) - .orEmpty() - } - url.startsWith(baseUrl) -> videosFromInternalUrl(url) - "blogger.com" in url -> extractBloggerVideos(url, vid.text().trim()) - else -> emptyList() - } - } - - return videoList - } - - private fun videosFromInternalUrl(url: String): List<Video> { - val videoDocument = client.newCall(GET(url, headers)).execute() - .asJsoup() - - val script = videoDocument.selectFirst("script:containsData(decodeURIComponent)")?.data() - ?.let(::getDecrypted) - ?: videoDocument.selectFirst("script:containsData(sources:)")?.data() - ?: return emptyList() - - return when { - "/bloggerjwplayer" in url || "jwplayer-2" in url || "/ctaplayer" in url -> { - BloggerJWPlayerExtractor.videosFromScript(script) - } - "/m3u8" in url -> PlaylistExtractor.videosFromScript(script) - else -> emptyList() - } - } - - private fun extractBloggerVideos(url: String, name: String): List<Video> { - return client.newCall(GET(url, headers)).execute() - .body.string() - .takeIf { !it.contains("errorContainer") } - .let { it ?: return emptyList() } - .substringAfter("\"streams\":[") - .substringBefore("]") - .split("},") - .map { - val videoUrl = it.substringAfter("{\"play_url\":\"").substringBefore('"') - val format = it.substringAfter("\"format_id\":").substringBefore("}") - val quality = when (format) { - "18" -> "360p" - "22" -> "720p" - else -> "Unknown" - } - Video(videoUrl, "$quality - $name", videoUrl, headers = headers) - } - } - - override fun videoFromElement(element: Element): Video = throw UnsupportedOperationException() - - override fun videoListSelector(): String = throw UnsupportedOperationException() - - override fun videoUrlParse(document: Document): String = throw UnsupportedOperationException() - - // ============================== Settings ============================== - override fun setupPreferenceScreen(screen: PreferenceScreen) { - ListPreference(screen.context).apply { - key = PREF_QUALITY_KEY - title = PREF_QUALITY_TITLE - entries = PREF_QUALITY_ENTRIES - entryValues = PREF_QUALITY_VALUES - setDefaultValue(PREF_QUALITY_DEFAULT) - summary = "%s" - - setOnPreferenceChangeListener { _, newValue -> - val selected = newValue as String - val index = findIndexOfValue(selected) - val entry = entryValues[index] as String - preferences.edit().putString(key, entry).commit() - } - }.also(screen::addPreference) - } - - // ============================= Utilities ============================== - private fun getDecrypted(script: String): String? { - val patchedScript = script.trim().split("\n").first() - .replace("eval(function", "function a") - .replace("decodeURIComponent(escape(r))}(", "r};a(") - .substringBeforeLast(")") - - return QuickJs.create().use { - it.evaluate(patchedScript)?.toString() - } - } - - private fun queryToJsonList(input: String): String { - if (input.isEmpty()) return "" - return input.substringAfter("=").split("%2C").joinToString(",") { - "\"$it\"" - } - } - - @Serializable - data class VideoResponse(val embed_url: String) - - @Serializable - data class PostResponse( - val template: String, - val settings: Settings, - ) { - @Serializable - data class Settings(val pager: Pager) { - @Serializable - data class Pager( - val page: Int, - val total_pages: Int, - ) - } - } - - override fun List<Video>.sort(): List<Video> { - val quality = preferences.getString(PREF_QUALITY_KEY, PREF_QUALITY_DEFAULT)!! - - return sortedWith( - compareBy { it.quality.contains(quality) }, - ).reversed() - } - - companion object { - const val PREFIX_SEARCH = "id:" - - private val EPISODE_REGEX by lazy { Regex("""Episódio ?\d+\.?\d* ?""") } - - private const val PREF_QUALITY_KEY = "preferred_quality" - private const val PREF_QUALITY_TITLE = "Qualidade preferida" - private const val PREF_QUALITY_DEFAULT = "720" - private val PREF_QUALITY_ENTRIES = arrayOf("1080p", "720p", "480p", "360p") - private val PREF_QUALITY_VALUES = arrayOf("1080", "720", "480", "360") - } -} diff --git a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AnimesZoneFilters.kt b/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AnimesZoneFilters.kt deleted file mode 100644 index 73e82ee7..00000000 --- a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/AnimesZoneFilters.kt +++ /dev/null @@ -1,279 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animeszone - -import eu.kanade.tachiyomi.animesource.model.AnimeFilter -import eu.kanade.tachiyomi.animesource.model.AnimeFilterList - -object AnimesZoneFilters { - open class QueryPartFilter( - displayName: String, - val vals: Array<Pair<String, String>>, - ) : AnimeFilter.Select<String>( - displayName, - vals.map { it.first }.toTypedArray(), - ) { - fun toQueryPart() = vals[state].second - } - - open class CheckBoxFilterList(name: String, values: List<CheckBox>) : AnimeFilter.Group<AnimeFilter.CheckBox>(name, values) - private class CheckBoxVal(name: String, state: Boolean = false) : AnimeFilter.CheckBox(name, state) - - private inline fun <reified R> AnimeFilterList.asQueryPart(name: String): String { - return (first { it is R } as QueryPartFilter).toQueryPart() - .takeUnless(String::isEmpty) - ?.let { "&$name=$it" } - .orEmpty() - } - - private inline fun <reified R> AnimeFilterList.parseCheckbox( - options: Array<Pair<String, String>>, - name: String, - ): String { - return (first { it is R } as CheckBoxFilterList).state - .asSequence() - .filter { it.state } - .map { checkbox -> options.find { it.first == checkbox.name }!!.second } - .filter(String::isNotBlank) - .joinToString("%2C") { "&$name=$it" } - } - - class GenreFilter : CheckBoxFilterList( - "Selecionar Gêneros", - AnimesZoneFiltersData.GENRE.map { CheckBoxVal(it.first, false) }, - ) - - class YearFilter : QueryPartFilter("Ano", AnimesZoneFiltersData.YEAR) - - class VersionFilter : QueryPartFilter("Versão", AnimesZoneFiltersData.VERSION) - - class StudioFilter : CheckBoxFilterList( - "Estudio", - AnimesZoneFiltersData.STUDIO.map { CheckBoxVal(it.first, false) }, - ) - - class TypeFilter : QueryPartFilter("Tipo", AnimesZoneFiltersData.TYPE) - - class AdultFilter : QueryPartFilter("Adulto", AnimesZoneFiltersData.ADULT) - - val FILTER_LIST get() = AnimeFilterList( - GenreFilter(), - StudioFilter(), - YearFilter(), - VersionFilter(), - TypeFilter(), - AdultFilter(), - ) - - data class FilterSearchParams( - val genre: String = "", - val year: String = "", - val version: String = "", - val studio: String = "", - val type: String = "", - val adult: String = "", - ) - - internal fun getSearchParameters(filters: AnimeFilterList): FilterSearchParams { - if (filters.isEmpty()) return FilterSearchParams() - - return FilterSearchParams( - filters.parseCheckbox<GenreFilter>(AnimesZoneFiltersData.GENRE, "_generos"), - filters.asQueryPart<YearFilter>("_versao"), - filters.asQueryPart<VersionFilter>("_tipo"), - filters.parseCheckbox<StudioFilter>(AnimesZoneFiltersData.STUDIO, "_estudio"), - filters.asQueryPart<TypeFilter>("_tipototal"), - filters.asQueryPart<AdultFilter>("_adulto"), - ) - } - - private object AnimesZoneFiltersData { - val ANY = Pair("Selecione", "") - - val GENRE = arrayOf( - Pair("Comédia", "comedia"), - Pair("Ação", "acao"), - Pair("Fantasia", "fantasia"), - Pair("Romance", "romance"), - Pair("Drama", "drama"), - Pair("Escolar", "escolar"), - Pair("Aventura", "aventura"), - Pair("Shounen", "shounen"), - Pair("Sobrenatural", "sobrenatural"), - Pair("Slice-of-life", "slice-of-life"), - Pair("Sci-Fi", "sci-fi"), - Pair("Ecchi", "ecchi"), - Pair("Mistério", "misterio"), - Pair("Seinen", "seinen"), - Pair("Magia", "magia"), - Pair("Animação", "animacao"), - Pair("Harem", "harem"), - Pair("Psicológico", "psicologico"), - Pair("Super Poder", "super-poder"), - Pair("Violência", "violencia"), - Pair("Sci-Fi & Fantasy", "sci-fi-fantasy"), - Pair("Histórico", "historico"), - Pair("Isekai", "isekai"), - Pair("Mecha", "mecha"), - Pair("Demónio", "demonio"), - Pair("Terror", "terror"), - Pair("Esportes", "esportes"), - Pair("Militar", "militar"), - Pair("Artes Marciais", "artes-marciais"), - Pair("Jogo", "jogo"), - Pair("Vampiro", "vampiro"), - Pair("Musical", "musical"), - Pair("Suspense", "suspense"), - Pair("Paródia", "parodia"), - Pair("Shoujo", "shoujo"), - Pair("Nudez", "nudez"), - Pair("Supernatural", "supernatural"), - Pair("Espacial", "espacial"), - Pair("Shoujo-ai", "shoujo-ai"), - Pair("Crime", "crime"), - Pair("Policial", "policial"), - Pair("Ficção Científica", "ficcao-cientifica"), - Pair("Samurai", "samurai"), - Pair("Josei", "josei"), - Pair("Action & Adventure", "action-adventure"), - Pair("Amizade", "amizade"), - Pair("Horror", "horror"), - Pair("Família", "familia"), - Pair("Música", "musica"), - Pair("Insanidade", "insanidade"), - Pair("Obsceno", "obsceno"), - Pair("Shounen-ai", "shounen-ai"), - Pair("Carros", "carros"), - Pair("Gore", "gore"), - Pair("War & Politics", "war-politics"), - Pair("Yaoi", "yaoi"), - Pair("Cinema TV", "cinema-tv"), - Pair("Gourmet", "gourmet"), - Pair("Infantil", "infantil"), - Pair("Vida Escolar", "vida-escolar"), - ) - - val YEAR = arrayOf(ANY) + (1986..2024).map { - Pair(it.toString(), it.toString()) - }.reversed().toTypedArray() - - val VERSION = arrayOf( - ANY, - Pair("Legendados", "legendada"), - Pair("Dublado", "series02"), - Pair("Seção de Hentais", "series03"), - ) - - val STUDIO = arrayOf( - Pair("J.C.Staff", "j-c-staff"), - Pair("Shueisha", "shueisha"), - Pair("Aniplex", "aniplex"), - Pair("BONES", "bones"), - Pair("Kadokawa", "kadokawa"), - Pair("TOHO Animation", "toho-animation"), - Pair("Pony Canyon", "pony-canyon"), - Pair("A-1 Pictures", "a-1-pictures"), - Pair("DENTSU", "dentsu"), - Pair("Kodansha", "kodansha"), - Pair("Production I.G", "production-i-g"), - Pair("CloverWorks", "cloverworks"), - Pair("Madhouse", "madhouse"), - Pair("Bit grooove promotion", "bit-grooove-promotion"), - Pair("MAPPA", "mappa"), - Pair("SILVER LINK.", "silver-link"), - Pair("Wit Studio", "wit-studio"), - Pair("Magic Capsule", "magic-capsule"), - Pair("OLM", "olm"), - Pair("Lantis", "lantis"), - Pair("Movic", "movic"), - Pair("SATELIGHT", "satelight"), - Pair("Shogakukan-Shueisha Productions", "shogakukan-shueisha-productions"), - Pair("Square Enix", "square-enix"), - Pair("STUDIO MAUSU", "studio-mausu"), - Pair("Yomiuri Telecasting Corporation", "yomiuri-telecasting-corporation"), - Pair("Bandai Namco Arts", "bandai-namco-arts"), - Pair("David Production", "david-production"), - Pair("EGG FIRM", "egg-firm"), - Pair("Lerche", "lerche"), - Pair("Liden Films", "liden-films"), - Pair("Sony Music Entertainment", "sony-music-entertainment-japan"), - Pair("Studio Deen", "studio-deen"), - Pair("TMS Entertainment", "tms-entertainment"), - Pair("Toho", "toho"), - Pair("Crunchyroll", "crunchyroll"), - Pair("dugout", "dugout"), - Pair("ENGI", "engi"), - Pair("MBS", "mbs"), - Pair("P.A.Works", "p-a-works"), - Pair("Tezuka Productions", "tezuka-productions"), - Pair("TV Tokyo", "tv-tokyo"), - Pair("Warner Bros. Japan", "warner-bros-japan"), - Pair("White Fox", "white-fox"), - Pair("avex pictures", "avex-pictures"), - Pair("Bibury Animation Studios", "bibury-animation-studios"), - Pair("Brain's Base", "brains-base"), - Pair("DMM music", "dmm-music"), - Pair("DMM pictures", "dmm-pictures"), - Pair("feel.", "feel"), - Pair("Hakuhodo DY Music & Pictures", "hakuhodo-dy-music-pictures"), - Pair("Lidenfilms", "lidenfilms"), - Pair("MAHO FILM", "maho-film"), - Pair("NHK Enterprises", "nhk-enterprises"), - Pair("Passione", "passione"), - Pair("Pierrot", "pierrot"), - Pair("Pine Jam", "pine-jam"), - Pair("Pink Pineapple", "pink-pineapple"), - Pair("project No.9", "project-no-9"), - Pair("Seven", "seven"), - Pair("SHAFT", "shaft"), - Pair("TNK", "tnk"), - Pair("Zero-G", "zero-g"), - Pair("Asahi Production", "asahi-production"), - Pair("asread", "asread"), - Pair("AT-X", "at-x"), - Pair("Bandai Namco Pictures", "bandai-namco-pictures"), - Pair("BS Fuji", "bs-fuji"), - Pair("C2C", "c2c"), - Pair("Children's Playground Entertainment", "childrens-playground-entertainment"), - Pair("diomedéa", "diomedea"), - Pair("Doga Kobo", "doga-kobo"), - Pair("Geno Studio", "geno-studio"), - Pair("Good Smile Company", "good-smile-company"), - Pair("Graphinica", "graphinica"), - Pair("Hakusensha", "hakusensha"), - Pair("HALF H·P STUDIO", "f279ee47217fbae84c07eb11181f4997"), - Pair("King Records", "king-records"), - Pair("Kyoto Animation", "kyoto-animation"), - Pair("Nippon BS Broadcasting", "nippon-bs-broadcasting"), - Pair("Nippon Columbia", "nippon-columbia"), - Pair("Nitroplus", "nitroplus"), - Pair("Shogakukan", "shogakukan"), - Pair("Sotsu", "sotsu"), - Pair("Sound Team・Don Juan", "45e6f4604baaebfbebf4f43139db8d68"), - Pair("Studio Gokumi", "studio-gokumi"), - Pair("Suiseisha", "suiseisha"), - Pair("SUNRISE", "sunrise"), - Pair("SynergySP", "synergysp"), - Pair("Techno Sound", "techno-sound"), - Pair("THE KLOCKWORX", "the-klockworx"), - Pair("Toei Animation", "toei-animation"), - Pair("TOY'S FACTORY", "toys-factory"), - Pair("Twin Engine", "twin-engine"), - Pair("ufotable", "ufotable"), - Pair("ABC Animation", "abc-animation"), - Pair("Ajiado", "ajiado"), - Pair("APDREAM", "apdream"), - Pair("Ashi Productions", "ashi-productions"), - ) - - val TYPE = arrayOf( - ANY, - Pair("TV Shows", "tvshows"), - Pair("Filmes", "movies"), - ) - - val ADULT = arrayOf( - ANY, - Pair("Hentais", "dublada"), - Pair("Seção de Hentais", "series03"), - ) - } -} diff --git a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/extractors/BloggerJWPlayerExtractor.kt b/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/extractors/BloggerJWPlayerExtractor.kt deleted file mode 100644 index c655a3e8..00000000 --- a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/extractors/BloggerJWPlayerExtractor.kt +++ /dev/null @@ -1,27 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animeszone.extractors - -import eu.kanade.tachiyomi.animesource.model.Video - -object BloggerJWPlayerExtractor { - fun videosFromScript(script: String): List<Video> { - val sources = script.substringAfter("sources: [").substringBefore("],") - - return sources.split("{").drop(1).mapNotNull { - val label = it.substringAfter("label") - .substringAfter(':') - .substringAfter('"') - .substringBefore('"') - - val videoUrl = it.substringAfter("file") - .substringAfter(':') - .substringAfter('"') - .substringBefore('"') - .replace("\\", "") - if (videoUrl.isEmpty()) { - null - } else { - Video(videoUrl, "BloggerJWPlayer - $label", videoUrl) - } - } - } -} diff --git a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/extractors/PlaylistExtractor.kt b/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/extractors/PlaylistExtractor.kt deleted file mode 100644 index 69d0d58c..00000000 --- a/src/pt/animeszone/src/eu/kanade/tachiyomi/animeextension/pt/animeszone/extractors/PlaylistExtractor.kt +++ /dev/null @@ -1,18 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.animeszone.extractors - -import eu.kanade.tachiyomi.animesource.model.Video - -object PlaylistExtractor { - fun videosFromScript(script: String): List<Video> { - val sources = script.substringAfter("sources: [").substringBefore("],") - - return sources.split("file:\"").drop(1).mapNotNull { source -> - val url = source.substringBefore("\"").ifEmpty { return@mapNotNull null } - val label = source.substringAfter("label:\"").substringBefore("\"") - .replace("FHD", "1080p") - .replace("HD", "720p") - .replace("SD", "480p") - Video(url, "Playlist - $label", url) - } - } -} diff --git a/src/pt/goanimes/build.gradle b/src/pt/goanimes/build.gradle deleted file mode 100644 index ba97b5b4..00000000 --- a/src/pt/goanimes/build.gradle +++ /dev/null @@ -1,16 +0,0 @@ -ext { - extName = 'GoAnimes' - extClass = '.GoAnimes' - themePkg = 'dooplay' - baseUrl = 'https://goanimes.net' - overrideVersionCode = 17 - isNsfw = true -} - -apply from: "$rootDir/common.gradle" - -dependencies { - implementation(project(":lib:playlist-utils")) - implementation(project(":lib:blogger-extractor")) - implementation(libs.jsunpacker) -} \ No newline at end of file diff --git a/src/pt/goanimes/res/mipmap-hdpi/ic_launcher.png b/src/pt/goanimes/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index 28f83b4bfb97ad37a1aabc0a77f3468663fe38e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3120 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 KMNUMnLSTYzZq;`H diff --git a/src/pt/goanimes/res/mipmap-mdpi/ic_launcher.png b/src/pt/goanimes/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index e2211ca35ac0412acf84f71e18171bd3a4bac94c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1715 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 JPDHLkV1j^nDG>kw diff --git a/src/pt/goanimes/res/mipmap-xhdpi/ic_launcher.png b/src/pt/goanimes/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index 25602ee3ea4acc67671c625f48a521754fe37709..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4152 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 Ct-TNc diff --git a/src/pt/goanimes/res/mipmap-xxhdpi/ic_launcher.png b/src/pt/goanimes/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index 9a852ec06a78db1235093bf85cff3e5c9c5ac9f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7328 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 GLSTaSz18sm diff --git a/src/pt/goanimes/res/mipmap-xxxhdpi/ic_launcher.png b/src/pt/goanimes/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index 9d4d528e3f3ddf9e505c7a84d477c4061119980e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10002 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 U9A67_thfSd%GydL3YPx=1AjH5_W%F@ diff --git a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/GoAnimes.kt b/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/GoAnimes.kt deleted file mode 100644 index a5f5af15..00000000 --- a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/GoAnimes.kt +++ /dev/null @@ -1,185 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.goanimes - -import eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors.BloggerJWPlayerExtractor -import eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors.GoAnimesExtractor -import eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors.JsDecoder -import eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors.LinkfunBypasser -import eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors.PlaylistExtractor -import eu.kanade.tachiyomi.animesource.model.SEpisode -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.lib.bloggerextractor.BloggerExtractor -import eu.kanade.tachiyomi.lib.playlistutils.PlaylistUtils -import eu.kanade.tachiyomi.multisrc.dooplay.DooPlay -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.network.await -import eu.kanade.tachiyomi.util.asJsoup -import eu.kanade.tachiyomi.util.parallelCatchingFlatMapBlocking -import okhttp3.Response -import org.jsoup.nodes.Element - -class GoAnimes : DooPlay( - "pt-BR", - "GoAnimes", - "https://goanimes.net", -) { - // ============================== Popular =============================== - override fun popularAnimeSelector() = "div#featured-titles article.item.tvshows > div.poster" - - // =============================== Latest =============================== - override val latestUpdatesPath = "lancamentos" - - // ============================== Episodes ============================== - override val seasonListSelector = "div#seasons > *" - - override fun getSeasonEpisodes(season: Element): List<SEpisode> { - // All episodes are listed under a single page - season.selectFirst(episodeListSelector())?.let { - return getSeasonEpisodesRecursive(season) - } - - // Episodes are listed at another page - val url = season.attr("href") - return client.newCall(GET(url, headers)) - .execute() - .asJsoup() - .let(::getSeasonEpisodes) - } - - private val episodeListNextPageSelector = "div.pagination span.current + a:not(.arrow_pag)" - - private fun getSeasonEpisodesRecursive(season: Element): List<SEpisode> { - var doc = season.root() - return buildList { - do { - if (isNotEmpty()) { - doc.selectFirst(episodeListNextPageSelector)?.let { - val url = it.attr("abs:href") - doc = client.newCall(GET(url, headers)).execute() - .asJsoup() - } - } - addAll(super.getSeasonEpisodes(doc)) - } while (doc.selectFirst(episodeListNextPageSelector) != null) - reversed() - } - } - - // ============================ Video Links ============================= - override val prefQualityValues = arrayOf("240p", "360p", "480p", "720p", "1080p") - override val prefQualityEntries = prefQualityValues - - private val goanimesExtractor by lazy { GoAnimesExtractor(client, headers) } - private val bloggerExtractor by lazy { BloggerExtractor(client) } - private val linkfunBypasser by lazy { LinkfunBypasser(client) } - private val playlistUtils by lazy { PlaylistUtils(client, headers) } - - override fun videoListParse(response: Response): List<Video> { - val document = response.asJsoup() - val players = document.select("ul#playeroptionsul li") - return players.parallelCatchingFlatMapBlocking(::getPlayerVideos) - } - - private suspend fun getPlayerVideos(player: Element): List<Video> { - val name = player.selectFirst("span.title")!!.text() - .replace("FULLHD", "1080p") - .replace("HD", "720p") - .replace("SD", "480p") - val url = getPlayerUrl(player) - return when { - "https://gojopoolt" in url -> { - val headers = headers.newBuilder() - .set("referer", url) - .build() - - val script = client.newCall(GET(url, headers)).await() - .body.string() - .let { JsDecoder.decodeScript(it, false).ifBlank { it } } - - script.substringAfter("sources: [") - .substringBefore(']') - .split('{') - .drop(1) - .mapNotNull { - val videoUrl = it.substringAfter("file: ") - .substringBefore(", ") - .trim('"', '\'', ' ') - .ifBlank { return@mapNotNull null } - - val resolution = it.substringAfter("label: ", "") - .substringAfter('"') - .substringBefore('"') - .ifBlank { name.split('-').last().trim() } - - val partialName = name.split('-').first().trim() - return when { - videoUrl.contains(".m3u8") -> { - playlistUtils.extractFromHls( - videoUrl, - url, - videoNameGen = { - "$partialName - ${it.replace("Video", resolution)}" - }, - ) - } - else -> listOf(Video(videoUrl, "$partialName - $resolution", videoUrl, headers)) - } - } - } - listOf("/bloggerjwplayer", "/m3u8", "/multivideo").any { it in url } -> { - val script = client.newCall(GET(url)).await() - .body.string() - .let { JsDecoder.decodeScript(it, true).ifBlank { JsDecoder.decodeScript(it, false).ifBlank { it } } } - when { - "/bloggerjwplayer" in url -> - BloggerJWPlayerExtractor.videosFromScript(script) - "/m3u8" in url -> - PlaylistExtractor.videosFromScript(script) - "/multivideo" in url -> - script.substringAfter("attr") - .substringAfter(" \"") - .substringBefore('"') - .let { goanimesExtractor.videosFromUrl(it, name) } - - else -> emptyList<Video>() - } - } - "www.blogger.com" in url -> bloggerExtractor.videosFromUrl(url, headers) - else -> goanimesExtractor.videosFromUrl(url, name) - } - } - - private suspend fun getPlayerUrl(player: Element): String { - val type = player.attr("data-type") - val id = player.attr("data-post") - val num = player.attr("data-nume") - val url = client.newCall(GET("$baseUrl/wp-json/dooplayer/v2/$id/$type/$num")) - .await() - .body.string() - .substringAfter("\"embed_url\":\"") - .substringBefore("\",") - .replace("\\", "") - - return when { - "/protetorlinks/" in url -> { - val link = client.newCall(GET(url)).await() - .asJsoup() - .selectFirst("a[href]")!!.attr("href") - - client.newCall(GET(link)).await() - .use(linkfunBypasser::getIframeUrl) - } - else -> url - } - } - // ============================= Utilities ============================== - - override fun List<Video>.sort(): List<Video> { - val quality = preferences.getString(videoSortPrefKey, videoSortPrefDefault)!! - return sortedWith( - compareBy( - { it.quality.contains(quality) }, - { Regex("""(\d+)p""").find(it.quality)?.groupValues?.get(1)?.toIntOrNull() ?: 0 }, - ), - ).reversed() - } -} diff --git a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/BloggerJWPlayerExtractor.kt b/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/BloggerJWPlayerExtractor.kt deleted file mode 100644 index e44071a7..00000000 --- a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/BloggerJWPlayerExtractor.kt +++ /dev/null @@ -1,18 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors - -import eu.kanade.tachiyomi.animesource.model.Video - -object BloggerJWPlayerExtractor { - fun videosFromScript(script: String): List<Video> { - val sources = script.substringAfter("sources: [").substringBefore("],") - - return sources.split("{").drop(1).map { - val label = it.substringAfter("label").substringAfter(":\"").substringBefore('"') - val videoUrl = it.substringAfter("file") - .substringAfter(":\"") - .substringBefore('"') - .replace("\\", "") - Video(videoUrl, "BloggerJWPlayer - $label", videoUrl) - } - } -} diff --git a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/GoAnimesExtractor.kt b/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/GoAnimesExtractor.kt deleted file mode 100644 index b416c144..00000000 --- a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/GoAnimesExtractor.kt +++ /dev/null @@ -1,81 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors - -import android.util.Base64 -import dev.datlag.jsunpacker.JsUnpacker -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.lib.playlistutils.PlaylistUtils -import eu.kanade.tachiyomi.network.GET -import okhttp3.Headers -import okhttp3.HttpUrl.Companion.toHttpUrl -import okhttp3.OkHttpClient - -class GoAnimesExtractor(private val client: OkHttpClient, private val headers: Headers) { - private val playlistUtils by lazy { PlaylistUtils(client, headers) } - - fun videosFromUrl(url: String, name: String): List<Video> { - val body = client.newCall(GET(url, headers)).execute() - .body.string() - - val decodedBody = JsUnpacker.unpackAndCombine(body) - ?: JsDecoder.decodeScript(body, false).takeIf(String::isNotEmpty) - ?: JsDecoder.decodeScript(body, true).takeIf(String::isNotEmpty) - ?: body - - val partialName = name.split('-').first().trim() - val resolution = name.split('-').last().trim() - - return when { - "/proxy/v.php" in url -> { - val playlistUrl = JsUnpacker.unpackAndCombine(body) - ?.substringAfterLast("player(\\'", "") - ?.substringBefore("\\'", "") - ?.takeIf(String::isNotEmpty) - ?: return emptyList() - - playlistUtils.extractFromHls( - playlistUrl, - url, - videoNameGen = { "$partialName - ${it.replace("Video", resolution)}" }, - ) - } - "/proxy/api3/" in url -> { - val playlistUrl = body.substringAfter("sources:", "") - .substringAfter("file:", "") - .substringAfter("'", "") - .substringBefore("'", "") - .takeIf(String::isNotEmpty) - ?: return emptyList() - - val fixedUrl = if (playlistUrl.contains("/aHR0")) { - val encoded = playlistUrl.substringAfterLast("/").substringBefore(".") - String(Base64.decode(encoded, Base64.DEFAULT)) - } else { - playlistUrl - } - - val referer = url.toHttpUrl().queryParameter("url") ?: url - playlistUtils.extractFromHls( - fixedUrl, - referer, - videoNameGen = { "$partialName - ${it.replace("Video", resolution)}" }, - ) - } - "jwplayer" in decodedBody && "sources:" in decodedBody -> { - val videos = PlaylistExtractor.videosFromScript(decodedBody, partialName) - - if ("label:" !in decodedBody && videos.size === 1) { - return playlistUtils.extractFromHls( - videos[0].url, - url, - videoNameGen = { "$partialName - ${it.replace("Video", resolution)}" }, - ) - } - - videos - } - else -> emptyList() - } - } -} - -private const val PLAYER_NAME = "GoAnimes" diff --git a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/JsDecoder.kt b/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/JsDecoder.kt deleted file mode 100644 index 22be5fe8..00000000 --- a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/JsDecoder.kt +++ /dev/null @@ -1,48 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors - -import android.util.Base64 -import kotlin.math.pow - -object JsDecoder { - private fun convertToNum(thing: String, limit: Float): Int { - return thing.split("") - .reversed() - .map { it.toIntOrNull() ?: 0 } - .reduceIndexed { index: Int, acc, num -> - acc + (num * limit.pow(index - 1)).toInt() - } - } - - fun decodeScript(encodedString: String, magicStr: String, offset: Int, limit: Int): String { - val regex = "\\w".toRegex() - return encodedString - .split(magicStr[limit]) - .dropLast(1) - .map { str -> - val replaced = regex.replace(str) { magicStr.indexOf(it.value).toString() } - val charInt = convertToNum(replaced, limit.toFloat()) - offset - Char(charInt) - }.joinToString("") - } - - fun decodeScript(html: String, isB64: Boolean = true): String { - val script = if (isB64) { - html.substringAfter(";base64,") - .substringBefore('"') - .let { String(Base64.decode(it, Base64.DEFAULT)) } - } else { - html - } - - val regex = """\}\("(\w+)",.*?"(\w+)",(\d+),(\d+),.*?\)""".toRegex() - return regex.find(script) - ?.run { - decodeScript( - groupValues[1], // encoded data - groupValues[2], // magic string - groupValues[3].toIntOrNull() ?: 0, // offset - groupValues[4].toIntOrNull() ?: 0, // limit - ) - } ?: "" - } -} diff --git a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/LinkfunBypasser.kt b/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/LinkfunBypasser.kt deleted file mode 100644 index 46bfec81..00000000 --- a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/LinkfunBypasser.kt +++ /dev/null @@ -1,54 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors - -import android.util.Base64 -import eu.kanade.tachiyomi.network.POST -import eu.kanade.tachiyomi.util.asJsoup -import okhttp3.FormBody -import okhttp3.Headers -import okhttp3.OkHttpClient -import okhttp3.Response - -class LinkfunBypasser(private val client: OkHttpClient) { - fun getIframeUrl(page: Response): String { - val docString = page.body.string() - val document = if (docString.startsWith("<script")) { - page.asJsoup(decodeAtob(docString)) - } else { page.asJsoup(docString) } - - val newHeaders = Headers.headersOf("Referer", document.location()) - - val iframe = document.selectFirst("iframe[src]") - - return if (iframe != null) { - iframe.attr("src") - } else { - val formBody = FormBody.Builder().apply { - document.select("input[name]").forEach { - add(it.attr("name"), it.attr("value")) - } - }.build() - - val formUrl = document.selectFirst("form")!!.attr("action") - client.newCall(POST(formUrl, newHeaders, formBody)) - .execute() - .let(::getIframeUrl) - } - } - - companion object { - fun decodeAtob(html: String): String { - val atobContent = html.substringAfter("atob(\"").substringBefore("\"));") - val hexAtob = atobContent.replace("\\x", "").decodeHex() - val decoded = Base64.decode(hexAtob, Base64.DEFAULT) - return String(decoded) - } - - // Stolen from AnimixPlay(EN) / GogoCdnExtractor - private fun String.decodeHex(): ByteArray { - check(length % 2 == 0) { "Must have an even length" } - return chunked(2) - .map { it.toInt(16).toByte() } - .toByteArray() - } - } -} diff --git a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/PlaylistExtractor.kt b/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/PlaylistExtractor.kt deleted file mode 100644 index 79c13f85..00000000 --- a/src/pt/goanimes/src/eu/kanade/tachiyomi/animeextension/pt/goanimes/extractors/PlaylistExtractor.kt +++ /dev/null @@ -1,30 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.goanimes.extractors - -import eu.kanade.tachiyomi.animesource.model.Video - -object PlaylistExtractor { - fun videosFromScript(script: String, prefix: String = "Playlist"): List<Video> { - val sources = script.substringAfter("sources: [").substringBefore("],") - - return sources.split("{").drop(1).mapNotNull { source -> - val url = source.substringAfter("file:") - .substringAfter('"', "") - .substringBefore('"', "") - .takeIf(String::isNotEmpty) - ?: source.substringAfter("file:") - .substringAfter("'", "") - .substringBefore("'", "") - .takeIf(String::isNotEmpty) - - if (url.isNullOrBlank()) { - return@mapNotNull null - } - - val label = source.substringAfter("label:").substringAfter('"').substringBefore('"') - .replace("FHD", "1080p") - .replace("HD", "720p") - .replace("SD", "480p") - Video(url, "$prefix - $label", url) - } - } -} diff --git a/src/pt/hinatasoul/AndroidManifest.xml b/src/pt/hinatasoul/AndroidManifest.xml deleted file mode 100644 index 9328bbdf..00000000 --- a/src/pt/hinatasoul/AndroidManifest.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<manifest xmlns:android="http://schemas.android.com/apk/res/android"> - - <application> - <activity - android:name=".pt.hinatasoul.HSUrlActivity" - android:excludeFromRecents="true" - android:exported="true" - android:theme="@android:style/Theme.NoDisplay"> - <intent-filter> - <action android:name="android.intent.action.VIEW" /> - - <category android:name="android.intent.category.DEFAULT" /> - <category android:name="android.intent.category.BROWSABLE" /> - - <data - android:host="www.hinatasoul.com" - android:pathPattern="/animes/..*" - android:scheme="https" /> - </intent-filter> - </activity> - </application> -</manifest> diff --git a/src/pt/hinatasoul/build.gradle b/src/pt/hinatasoul/build.gradle deleted file mode 100644 index 084d175a..00000000 --- a/src/pt/hinatasoul/build.gradle +++ /dev/null @@ -1,7 +0,0 @@ -ext { - extName = 'Hinata Soul' - extClass = '.HinataSoul' - extVersionCode = 9 -} - -apply from: "$rootDir/common.gradle" diff --git a/src/pt/hinatasoul/res/mipmap-hdpi/ic_launcher.png b/src/pt/hinatasoul/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index d311d948e4f35dfdf91fbd292a91266ba0f831c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4287 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 B`%(Y^ diff --git a/src/pt/hinatasoul/res/mipmap-mdpi/ic_launcher.png b/src/pt/hinatasoul/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index 4aa0b17a37b067b16b29897e8217c1cbf02458d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2845 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 W@NXxvz9b1Q1K3#Dp)1e$UH=#1-Xzxm diff --git a/src/pt/hinatasoul/res/mipmap-xhdpi/ic_launcher.png b/src/pt/hinatasoul/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index 87fed1cabd08b0c28e4a91418475d985c3c2cf7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5812 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 diff --git a/src/pt/hinatasoul/res/mipmap-xxhdpi/ic_launcher.png b/src/pt/hinatasoul/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index d480b746b1176248a9b5fcb286209d3882eb9f87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8844 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 diff --git a/src/pt/hinatasoul/res/mipmap-xxxhdpi/ic_launcher.png b/src/pt/hinatasoul/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index b6dc907aa5d9360329e1b3d4c90eb0775f8be5e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12136 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 BTyOvY diff --git a/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/HSUrlActivity.kt b/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/HSUrlActivity.kt deleted file mode 100644 index c3d95336..00000000 --- a/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/HSUrlActivity.kt +++ /dev/null @@ -1,42 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.hinatasoul - -import android.app.Activity -import android.content.ActivityNotFoundException -import android.content.Intent -import android.os.Bundle -import android.util.Log -import kotlin.system.exitProcess - -/** - * Springboard that accepts https://www.hinatasoul.com/animes/<slug> intents - * and redirects them to the main Aniyomi process. - */ -class HSUrlActivity : Activity() { - - private val tag = "HSUrlActivity" - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - val pathSegments = intent?.data?.pathSegments - if (pathSegments != null && pathSegments.size > 1) { - val slug = pathSegments[1] - val searchQuery = HinataSoul.PREFIX_SEARCH + slug - val mainIntent = Intent().apply { - action = "eu.kanade.tachiyomi.ANIMESEARCH" - putExtra("query", searchQuery) - putExtra("filter", packageName) - } - - try { - startActivity(mainIntent) - } catch (e: ActivityNotFoundException) { - Log.e(tag, e.toString()) - } - } else { - Log.e(tag, "could not parse uri from intent $intent") - } - - finish() - exitProcess(0) - } -} diff --git a/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/HinataSoul.kt b/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/HinataSoul.kt deleted file mode 100644 index 3d636c45..00000000 --- a/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/HinataSoul.kt +++ /dev/null @@ -1,308 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.hinatasoul - -import android.app.Application -import androidx.preference.EditTextPreference -import androidx.preference.ListPreference -import androidx.preference.PreferenceScreen -import eu.kanade.tachiyomi.animeextension.pt.hinatasoul.extractors.HinataSoulDownloadExtractor -import eu.kanade.tachiyomi.animeextension.pt.hinatasoul.extractors.HinataSoulExtractor -import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource -import eu.kanade.tachiyomi.animesource.model.AnimeFilterList -import eu.kanade.tachiyomi.animesource.model.AnimesPage -import eu.kanade.tachiyomi.animesource.model.SAnime -import eu.kanade.tachiyomi.animesource.model.SEpisode -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.network.awaitSuccess -import eu.kanade.tachiyomi.util.asJsoup -import eu.kanade.tachiyomi.util.parallelCatchingFlatMapBlocking -import okhttp3.Response -import org.jsoup.nodes.Document -import org.jsoup.nodes.Element -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get -import java.text.SimpleDateFormat -import java.util.Locale - -class HinataSoul : ConfigurableAnimeSource, ParsedAnimeHttpSource() { - - override val name = "Hinata Soul" - - override val baseUrl = "https://www.hinatasoul.com" - - override val lang = "pt-BR" - - override val supportsLatest = true - - private val preferences by lazy { - Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000) - } - - override fun headersBuilder() = super.headersBuilder().add("Referer", baseUrl) - - // ============================== Popular =============================== - override fun popularAnimeSelector() = "div.FsssItem:contains(Mais Vistos) > a" - - override fun popularAnimeRequest(page: Int) = GET(baseUrl) - - override fun popularAnimeFromElement(element: Element) = SAnime.create().apply { - setUrlWithoutDomain(element.attr("href")) - title = element.text() - } - - override fun popularAnimeNextPageSelector() = null - - // =============================== Latest =============================== - override fun latestUpdatesRequest(page: Int) = GET(baseUrl) - - override fun latestUpdatesSelector() = - "div.tituloContainer:contains(lançamento) + div.epiContainer a" - - override fun latestUpdatesFromElement(element: Element) = SAnime.create().apply { - setUrlWithoutDomain(element.attr("href")) - val img = element.selectFirst("img")!! - thumbnail_url = img.attr("src") - title = img.attr("alt") - } - - override fun latestUpdatesNextPageSelector() = null - - // =============================== Search =============================== - override suspend fun getSearchAnime( - page: Int, - query: String, - filters: AnimeFilterList, - ): AnimesPage { - return if (query.startsWith(PREFIX_SEARCH)) { - val slug = query.removePrefix(PREFIX_SEARCH) - client.newCall(GET("$baseUrl/animes/$slug")) - .awaitSuccess() - .use(::searchAnimeBySlugParse) - } else { - super.getSearchAnime(page, query, filters) - } - } - - private fun searchAnimeBySlugParse(response: Response): AnimesPage { - val details = animeDetailsParse(response).apply { - setUrlWithoutDomain(response.request.url.toString()) - initialized = true - } - - return AnimesPage(listOf(details), false) - } - - override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList) = - GET("$baseUrl/busca?busca=$query&page=$page") - - override fun searchAnimeSelector() = episodeListSelector() - - override fun searchAnimeNextPageSelector() = null - - override fun searchAnimeFromElement(element: Element) = SAnime.create().apply { - setUrlWithoutDomain(element.attr("href")) - thumbnail_url = element.selectFirst("img")?.attr("src") - title = element.selectFirst("div.ultimosAnimesHomeItemInfosNome")!!.text() - } - - override fun searchAnimeParse(response: Response): AnimesPage { - val document = response.asJsoup() - val animes = document.select(searchAnimeSelector()).map(::searchAnimeFromElement) - val hasNext = hasNextPage(document) - return AnimesPage(animes, hasNext) - } - - // =========================== Anime Details ============================ - override fun animeDetailsParse(document: Document) = SAnime.create().apply { - val doc = getRealDoc(document) - setUrlWithoutDomain(doc.location()) - val infos = doc.selectFirst("div.aniInfosSingle")!! - val img = infos.selectFirst("img")!! - thumbnail_url = img.attr("src") - title = img.attr("alt") - genre = infos.select("div.aniInfosSingleGeneros > span") - .eachText() - .joinToString() - - author = infos.getInfo("AUTOR") - artist = infos.getInfo("ESTÚDIO") - status = parseStatus(infos.selectFirst("div.anime_status")!!) - - description = buildString { - append(infos.selectFirst("div.aniInfosSingleSinopse > p")!!.text() + "\n") - infos.getInfo("Título")?.also { append("\nTítulos Alternativos: $it") } - infos.selectFirst("div.aniInfosSingleNumsItem:contains(Ano)")?.also { - append("\nAno: ${it.ownText()}") - } - infos.getInfo("Temporada")?.also { append("\nTemporada: $it") } - } - } - - // ============================== Episodes ============================== - override fun episodeListSelector() = "div.aniContainer a" - override fun episodeListParse(response: Response): List<SEpisode> { - var doc = getRealDoc(response.asJsoup()) - val totalEpisodes = buildList { - do { - if (isNotEmpty()) { - val url = doc.selectFirst("div.mwidth > a:containsOwn(»)")!!.absUrl("href") - doc = client.newCall(GET(url, headers)).execute().asJsoup() - } - doc.select(episodeListSelector()) - .map(::episodeFromElement) - .also(::addAll) - } while (hasNextPage(doc)) - reverse() - } - return totalEpisodes - } - - override fun episodeFromElement(element: Element) = SEpisode.create().apply { - val title = element.attr("title") - setUrlWithoutDomain(element.attr("href")) - name = title - episode_number = - title.substringBeforeLast(" - FINAL").substringAfterLast(" ").toFloatOrNull() ?: 0F - date_upload = element.selectFirst("div.lancaster_episodio_info_data")!! - .text() - .toDate() - } - - // ============================ Video Links ============================= - private val hinataExtractor by lazy { HinataSoulExtractor(headers, client, preferences) } - private val downloadExtractor by lazy { HinataSoulDownloadExtractor(headers, client) } - - override fun videoListParse(response: Response): List<Video> { - val document = response.asJsoup() - - val links = mutableListOf(document.location()) - - val downloadsLinks = document.select("div.reportaBox .reportContent > a") - - downloadsLinks.forEach { - it.attr("href")?.let { - links.add(it) - } - } - - val epName = document.selectFirst("meta[itemprop=name]")!!.attr("content") - - return links.parallelCatchingFlatMapBlocking { url -> - when { - url.contains("file4go.net") -> { - val quality = - downloadsLinks.first { it.attr("href") == url } - .textNodes().first().toString() - .trim().replace(" ", "") - - downloadExtractor.videosFromUrl(url, epName, quality) - } - - else -> hinataExtractor.getVideoList(document) - } - } - } - - override fun videoListSelector() = throw UnsupportedOperationException() - override fun videoFromElement(element: Element) = throw UnsupportedOperationException() - override fun videoUrlParse(document: Document) = throw UnsupportedOperationException() - - // ============================== Settings ============================== - override fun setupPreferenceScreen(screen: PreferenceScreen) { - ListPreference(screen.context).apply { - key = PREF_QUALITY_KEY - title = PREF_QUALITY_TITLE - entries = PREF_QUALITY_VALUES - entryValues = PREF_QUALITY_VALUES - setDefaultValue(PREF_QUALITY_DEFAULT) - summary = "%s" - setOnPreferenceChangeListener { _, newValue -> - val selected = newValue as String - val index = findIndexOfValue(selected) - val entry = entryValues[index] as String - preferences.edit().putString(key, entry).commit() - } - }.also(screen::addPreference) - - // Auth Code - EditTextPreference(screen.context).apply { - key = PREF_AUTHCODE_KEY - title = "Auth Code" - setDefaultValue(PREF_AUTHCODE_DEFAULT) - summary = PREF_AUTHCODE_SUMMARY - - setOnPreferenceChangeListener { _, newValue -> - runCatching { - val value = (newValue as String).trim().ifBlank { PREF_AUTHCODE_DEFAULT } - preferences.edit().putString(key, value).commit() - }.getOrDefault(false) - } - }.also(screen::addPreference) - } - - // ============================= Utilities ============================== - private fun parseStatus(element: Element): Int { - return when { - element.hasClass("completed") -> SAnime.COMPLETED - element.hasClass("airing") -> SAnime.ONGOING - else -> SAnime.UNKNOWN - } - } - - private fun hasNextPage(doc: Document): Boolean { - val currentUrl = doc.location() - val nextUrl = doc.selectFirst("a:contains(»)")!!.attr("href") - val endings = listOf("/1", "page=1") - return endings.none(nextUrl::endsWith) && currentUrl != nextUrl - } - - private val animeMenuSelector = "div.controlesBoxItem > a:has(i.iconLista)" - private fun getRealDoc(document: Document): Document { - if (!document.location().contains("/videos/")) { - return document - } - - return document.selectFirst(animeMenuSelector)?.let { - client.newCall(GET(it.attr("href"), headers)).execute() - .asJsoup() - } ?: document - } - - private fun Element.getInfo(key: String): String? { - return selectFirst("div.aniInfosSingleInfoItem:contains($key) span") - ?.text() - ?.trim() - } - - private fun String.toDate(): Long { - return runCatching { DATE_FORMATTER.parse(trim())?.time } - .getOrNull() ?: 0L - } - - override fun List<Video>.sort(): List<Video> { - val quality = preferences.getString(PREF_QUALITY_KEY, PREF_QUALITY_DEFAULT)!! - return sortedWith( - compareBy<Video>( - { it.quality.startsWith(quality) }, - { PREF_QUALITY_VALUES.indexOf(it.quality.substringBefore(" ")) }, - ).thenByDescending { it.quality }, - ).reversed() - } - - companion object { - private val DATE_FORMATTER by lazy { - SimpleDateFormat("dd/MM/yyyy à's' HH:mm", Locale.ENGLISH) - } - - const val PREFIX_SEARCH = "slug:" - - private const val PREF_AUTHCODE_KEY = "authcode" - private const val PREF_AUTHCODE_SUMMARY = "Código de Autenticação" - private const val PREF_AUTHCODE_DEFAULT = "" - private const val PREF_QUALITY_KEY = "preferred_quality" - private const val PREF_QUALITY_TITLE = "Qualidade preferida" - private const val PREF_QUALITY_DEFAULT = "FULLHD" - private val PREF_QUALITY_VALUES = arrayOf("SD", "HD", "FULLHD") - } -} diff --git a/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/extractors/HinataSoulDownloadExtractor.kt b/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/extractors/HinataSoulDownloadExtractor.kt deleted file mode 100644 index 71b47df9..00000000 --- a/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/extractors/HinataSoulDownloadExtractor.kt +++ /dev/null @@ -1,98 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.hinatasoul.extractors - -import android.util.Log -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.network.POST -import eu.kanade.tachiyomi.util.asJsoup -import eu.kanade.tachiyomi.util.parallelMapNotNullBlocking -import okhttp3.FormBody -import okhttp3.Headers -import okhttp3.OkHttpClient - -class HinataSoulDownloadExtractor( - private val headers: Headers, - private val client: OkHttpClient, -) { - - private val qualities = listOf("SD", "HD", "FULLHD") - private val tag by lazy { javaClass.simpleName } - - private fun videosFromFile4Go(url: String, quality: String): Video? { - Log.d(tag, "Checking download for $url") - val docDownload = client.newCall(GET(url)).execute().asJsoup() - - val form = - docDownload.selectFirst("button.download")?.closest("form") - - if (form == null) { - Log.d(tag, "Download form not found for $url") - return null - } - - val body = FormBody.Builder().apply { - form.select("input[name]").forEach { - add(it.attr("name"), it.attr("value")) - } - }.build() - - val postUrl = form.attr("action") - - val postHeaders = headers.newBuilder() - .set("Referer", url) - .build() - - val docFinal = - client.newCall(POST(postUrl, headers = postHeaders, body = body)) - .execute().asJsoup() - - val videoUrl = docFinal.selectFirst("a.novobotao.download")?.attr("href") - - if (videoUrl == null) { - Log.d(tag, "Download link not found for $url") - return null - } - - return Video(videoUrl, "$quality - File4Go", videoUrl) - } - - private fun videosFromDownloadPage(url: String, epName: String): List<Video> { - Log.d(tag, "Extracting videos links for URL: $url") - val docDownload = client.newCall(GET(url)).execute().asJsoup() - - val row = docDownload.select("table.downloadpag_episodios tr").firstOrNull { - it.text().contains(epName) - } - - if (row == null) { - Log.d(tag, "Episode $epName not found in download page") - return emptyList() - } - - val links = row.select("td").mapIndexedNotNull { index, el -> - val link = el.selectFirst("a") ?: return@mapIndexedNotNull null - - object { - var quality = qualities.get(index - 1) - var url = link.attr("href") - } - } - - Log.d(tag, "Found ${links.size} links for $epName") - - return links.parallelMapNotNullBlocking { - if (!it.url.contains("file4go.net")) { - return@parallelMapNotNullBlocking null - } - videosFromFile4Go(it.url, it.quality) - }.reversed() - } - - fun videosFromUrl(url: String, epName: String, quality: String = "Default"): List<Video> { - if (url.contains("file4go.net")) { - return listOfNotNull(videosFromFile4Go(url, quality)) - } - - return videosFromDownloadPage(url, epName) - } -} diff --git a/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/extractors/HinataSoulExtractor.kt b/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/extractors/HinataSoulExtractor.kt deleted file mode 100644 index abb6bc8d..00000000 --- a/src/pt/hinatasoul/src/eu/kanade/tachiyomi/animeextension/pt/hinatasoul/extractors/HinataSoulExtractor.kt +++ /dev/null @@ -1,243 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.pt.hinatasoul.extractors - -import android.content.SharedPreferences -import android.util.Log -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.network.POST -import eu.kanade.tachiyomi.util.asJsoup -import eu.kanade.tachiyomi.util.parallelMapNotNullBlocking -import okhttp3.FormBody -import okhttp3.Headers -import okhttp3.HttpUrl.Companion.toHttpUrl -import okhttp3.OkHttpClient -import okhttp3.Request -import org.jsoup.nodes.Document -import java.net.ProtocolException - -class HinataSoulExtractor( - private val headers: Headers, - private val client: OkHttpClient, - private val preferences: SharedPreferences, -) { - - private val tag by lazy { javaClass.simpleName } - - private data class VideoExists( - val exists: Boolean, - val code: Int, - ) - - private fun checkVideoExists(url: String): VideoExists { - try { - val request = Request.Builder() - .head() - .url(url) - .headers(headers) - .build() - - val response = client.newCall(request).execute() - - return VideoExists(response.isSuccessful, response.code) - } catch (e: ProtocolException) { - // There are a bug in the response that sometimes that the content is without headers - if (e.message?.contains("Unexpected status line") == true) { - return VideoExists(true, 200) - } - } - - return VideoExists(false, 404) - } - - private fun getAdsUrl( - serverUrl: String, - thumbUrl: String, - link: String, - linkHeaders: Headers, - ): String { - val videoName = serverUrl.split('/').last() - - val finalLink = - if (link.startsWith("//")) { - "https:$link" - } else { - link - } - Log.d(tag, "Accessing the link $finalLink") - val response = client.newCall(GET(finalLink, headers = linkHeaders)).execute() - val docLink = response.asJsoup() - - val refresh = docLink.selectFirst("meta[http-equiv=refresh]")?.attr("content") - - if (!refresh.isNullOrBlank()) { - val newLink = refresh.substringAfter("=") - val newHeaders = linkHeaders.newBuilder().set("Referer", finalLink).build() - Log.d(tag, "Following link redirection to $newLink") - - return getAdsUrl(serverUrl, thumbUrl, newLink, newHeaders) - } - - val referer: String = docLink.location() ?: link - - Log.d(tag, "Final URL: $referer") - Log.d(tag, "Fetching ADS URL") - - val newHeaders = linkHeaders.newBuilder().set("Referer", "https://${referer.toHttpUrl().host}/").build() - - try { - val now = System.currentTimeMillis() - val body = client.newCall( - GET( - "$SITE_URL?name=apphd/$videoName&img=$thumbUrl&pais=pais=BR&time=$now&url=$serverUrl", - headers = newHeaders, - ), - ) - .execute() - .body.string() - - val adsUrl = body.let { - Regex("""ADS_URL\s*=\s*['"]([^'"]+)['"]""") - .find(it)?.groups?.get(1)?.value - ?: "" - } - - if (adsUrl.startsWith("http")) { - Log.d(tag, "ADS URL: $adsUrl") - return adsUrl - } - } catch (e: Exception) { - Log.e(tag, e.toString()) - } - - // Try default url - Log.e(tag, "Failed to get the ADS URL, trying the default") - return "https://www.popads.net/js/adblock.js" - } - - private fun getAuthCode(serverUrl: String, thumbUrl: String, link: String): String { - var authCode = preferences.getString(PREF_AUTHCODE_KEY, "")!! - - if (authCode.isNotBlank()) { - Log.d(tag, "AuthCode found in preferences") - - val response = checkVideoExists("${serverUrl}$authCode") - - if (response.exists || response.code == 500) { - Log.d(tag, "AuthCode is OK") - return authCode - } - Log.d(tag, "AuthCode is invalid") - } - - Log.d(tag, "Fetching new authCode") - - val adsUrl = getAdsUrl(serverUrl, thumbUrl, link, headers) - - val adsContent = client.newCall(GET(adsUrl)).execute().body.string() - - val body = FormBody.Builder() - .add("category", "client") - .add("type", "premium") - .add("ad", adsContent) - .build() - - val newHeaders = headers.newBuilder() - .set("Referer", "https://${SITE_URL.toHttpUrl().host}/") - .add("Accept", "*/*") - .add("Cache-Control", "no-cache") - .add("Pragma", "no-cache") - .add("Connection", "keep-alive") - .add("Sec-Fetch-Dest", "empty") - .add("Sec-Fetch-Mode", "cors") - .add("Sec-Fetch-Site", "same-site") - .build() - - val publicidade = - client.newCall(POST("$ADS_URL/", headers = newHeaders, body = body)) - .execute() - .body.string() - .substringAfter("\"publicidade\"") - .substringAfter('"') - .substringBefore('"') - - if (publicidade.isBlank()) { - Log.e( - tag, - "Failed to fetch \"publicidade\" code, the current response: $publicidade", - ) - - throw Exception("Por favor, abra o vídeo uma vez no navegador para liberar o IP") - } - - authCode = - client.newCall( - GET( - "$ADS_URL/?token=$publicidade", - headers = newHeaders, - ), - ) - .execute() - .body.string() - .substringAfter("\"publicidade\"") - .substringAfter('"') - .substringBefore('"') - - if (authCode.startsWith("?")) { - Log.d(tag, "Auth code fetched successfully") - preferences.edit().putString(PREF_AUTHCODE_KEY, authCode).commit() - } else { - Log.e( - tag, - "Failed to fetch auth code, the current response: $authCode", - ) - } - - return authCode - } - - fun getVideoList(doc: Document): List<Video> { - val hasFHD = doc.selectFirst("div.abaItem:contains(FULLHD)") != null - val serverUrl = doc.selectFirst("meta[itemprop=contentURL]")!! - .attr("content") - .replace("cdn1", "cdn3") - val thumbUrl = doc.selectFirst("meta[itemprop=thumbnailUrl]")!! - .attr("content") - val type = serverUrl.split("/").get(3) - val qualities = listOfNotNull("SD", "HD", if (hasFHD) "FULLHD" else null) - val paths = listOf("appsd", "apphd").let { - if (type.endsWith("2")) { - it.map { path -> path + "2" } - } else { - it - } - } + listOf("appfullhd") - - val firstLink = - doc.selectFirst("div.video_container > a, div.playerContainer > a")!!.attr("href") - - val authCode = getAuthCode(serverUrl, thumbUrl, firstLink) - - return qualities - .mapIndexed { index, quality -> - object { - var path = paths[index] - var url = serverUrl.replace(type, path) + authCode - var quality = "$quality - Anitube" - } - } - .parallelMapNotNullBlocking { - if (!checkVideoExists(it.url).exists) { - Log.d(tag, "Video not exists: ${it.url.substringBefore("?")}") - return@parallelMapNotNullBlocking null - } - Video(it.url, it.quality, it.url, headers = headers) - } - .reversed() - } - - companion object { - private const val PREF_AUTHCODE_KEY = "authcode" - private const val ADS_URL = "https://ads.anitube.vip" - private const val SITE_URL = "https://www.hinatasoul.com/luffy.php" - } -}