From 99b831be3a743fa63b76a34c6a8ca7552887b3fc Mon Sep 17 00:00:00 2001 From: Vitaliy <42554566+BlackNuziGuy@users.noreply.github.com> Date: Sun, 4 Aug 2019 18:55:15 +0300 Subject: [PATCH] The Pururin.io extension. (#1372) * Added pururin * Update PuruRin.kt * Applied suggested changes. --- src/en/pururin/build.gradle | 12 ++ .../pururin/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2744 bytes .../pururin/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1874 bytes .../pururin/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 3624 bytes .../pururin/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 5911 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 9699 bytes src/en/pururin/res/web_hi_res_512.png | Bin 0 -> 16707 bytes .../tachiyomi/extension/en/pururin/PuruRin.kt | 190 ++++++++++++++++++ 8 files changed, 202 insertions(+) create mode 100644 src/en/pururin/build.gradle create mode 100644 src/en/pururin/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/en/pururin/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/en/pururin/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/en/pururin/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/en/pururin/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/en/pururin/res/web_hi_res_512.png create mode 100644 src/en/pururin/src/eu/kanade/tachiyomi/extension/en/pururin/PuruRin.kt diff --git a/src/en/pururin/build.gradle b/src/en/pururin/build.gradle new file mode 100644 index 000000000..292465597 --- /dev/null +++ b/src/en/pururin/build.gradle @@ -0,0 +1,12 @@ +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' + +ext { + appName = 'Tachiyomi: Pururin' + pkgNameSuffix = 'en.pururin' + extClass = '.Pururin' + extVersionCode = 1 + libVersion = '1.2' +} + +apply from: "$rootDir/common.gradle" diff --git a/src/en/pururin/res/mipmap-hdpi/ic_launcher.png b/src/en/pururin/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c656b5be7790ecd17cbbb312c5a10232ded203dd GIT binary patch literal 2744 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 M07*qoM6N<$g37CZRR910 literal 0 HcmV?d00001 diff --git a/src/en/pururin/res/mipmap-xhdpi/ic_launcher.png b/src/en/pururin/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..6d0d55f00a2fa0b732e2346dce64ba44cbe31aee GIT binary patch literal 3624 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 literal 0 HcmV?d00001 diff --git a/src/en/pururin/res/mipmap-xxxhdpi/ic_launcher.png b/src/en/pururin/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..ee1a1061ce6d4def48de602dad535e1b08858517 GIT binary patch literal 9699 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 literal 0 HcmV?d00001 diff --git a/src/en/pururin/res/web_hi_res_512.png b/src/en/pururin/res/web_hi_res_512.png new file mode 100644 index 0000000000000000000000000000000000000000..6bced12e7a11f834a4028e73e9a80f19647dddd6 GIT binary patch literal 16707 zcmb`uXIN8D@GpMS2ptrph!|85P$^cVCa8dj6h$c_O;mbOdP^dRC`eUA=?aR7G(|vK z0t%=|uhK%39(o`NDgP6{zyFK-;@&s+J`abSWY3wMnf=V{%0{l_N>Ecym00@x-0DL3>(AePT zJOKEs0>FX;0BF1f0CDeR`zCz=!2C44pnEN7XlWFexNkO`MC<6${`?t@A8mjRA~13c3 zU2p%PYuThj`NikYJ4`Lo?0kOQ7YhJza9#@nrI!Ik`X~DTgBuKo7970(AKc(UG5|Mt z{a@b5TpL>UCQ6)q-w}83T=Km!C{U4*((5z!Xj`CN&BaqW>&MkGd!EmIuLO2(w9J}5 zM2wk!4Nm^;;XeZz33w^VL?9E>!ZV6E>OZKaJqPx-=Iz6pjyC3pAkbG5nUSAKA#>ry>9-T$6AR z7%&k8+TRmIpHidc;w}#D842jHaISA}g#x@S-2#KJAu?wcg!tHAh9b#_?-ri4pZW^` zelTvJX+I?a5k)xSdcQ(r0~M?Y0HXjDQ^rd`F#;`my|$yH*g`aI0G~N5F!)n9ClMm! zm_)j$x)m9@P{Kp4uq8@R>CY@9^z5@j)yw?JlfI^3mzP9^x#bAQO)8kHNR5OG*c z_L#UBJ3RRv$TIuEz)8R%jw0v2`YJ=FN}}@x(`SUn@`+-PlfC=MVV4uo(6!#5cQ zqS_reH&BCw^&vPYU5pga7|brEpx@5y1yRQhLGXbrv3B~#{;v4e?uP&h767*a>&_P& z_JksC$GPw%p)p|>fDzBBf;d=_``KgTXMVa11NcbT#P%DA)a7?~3W|h(x^Z8Jo;9 z&~m0{?r69`h;T^G5*(kDBVxvZlt;cOE9iBlpP;G(;e8$4yoa**Qea2=;68x10#F;a zPfx?~2LzTwq6CgImQh!Rzs+uS3zX);^Y&c+%o^~kgnHG8x^18K=$G7mtO5Ap5BSWo zzX@XGIv~UV?XkMK=mf)~Grd6{=f8Y?ByLi2i2X6g(LAQwm{!?{`{v=GDkBO+sw0H6 zAi`YuiSenCHum<35Yr=cLj+;tUVwn~Bfr$WN2`0QetN^{f)J+G8P?i+#d$&8DY;`W zdk0Fao&Ql7hH%#ajuR@bt0gz9-c6!Z7>->DVqsFWvqhWRnmIeU>Ee`2x$_|4P+_1VA7*wRiczdmQG*b-)E5%O zv6XZ3;Tc=rl#oY60hp z?O@A!%wqU(kx1vTA929j?hQ3EQTX9Q=UW86Hm`=4@$}rZ^&{2aP_cdj-Pjgxm<;fd zK#fiZzHYFwSx}6H>P2N%TleTi1%`l>5d4fIJ%`ZtAnP4jDDOtOf1Q<0XY7}#A4~)0 z@zIF{uF7^Zj06C22ydjZOQ{Lp&tbd_*w#&iUBQcD*x_Bgd!;ks!*}+|d^lW4cuyL? zF0?uC7k(vwF*a#uS&`hW&GH(xaU1*a?lOmnv^4%)2Bh@GB#B!Sa)!p5Ifa?+#V~|S zEY!wBDT@Uy@o~lrtIOI9eFr1kny+s}e4Tx1b%d)m#g=XZl$4Z8S;OdB$5H#e1I)Mg zw9WPo*m?i>qsk)#_$>le?m%O@{Xl@s(11r{Z5(tA`!*hbz#QxmB3gX~@6d%92kgw8A4 zy&Db!k>@2OUbw0Ghp;}$&KGRtS11W zVm6;Qtde3(Rz7n9gBN>pr_%OI51coTws}4NyD@{qV5_hA=H^#(sT1L=n+q9Pc9}f~ zysc1$`+A?HxMqb31NW^Nn)>YJTHKC>&7AWA%<0vl%R+cS^#=lN_wbnk zd-pY}yU{fwfkeq+?L-YwQ1;=)CB+zH3wFr->F_&$m6+dG9m5@5P^L$~DgPvW z<>piIufmC%2nS7ZWV1NDq8eJ}w5$WfWmN!|SS*15QH*`}RCN5p+Ia)YNYiI}^B>Ed zA@}i{PSynM)Q(1(Mt;ZB{e4vvrkdOUOqjQ~%o*4Hf*ALskA2G$TD~?#uKX09fxs}4 zTw@?~D4o5I;T{vZ;eU5Jw)em}i0QGM-Sj1@am9WMY2BQY{AZic6{V%RYe;Tr{H&WLB~UD@C)ILn(hv@DSk#1c zC4B29c{L5kD@FVjUDrS7+@Qn~P&~t`v}Ge@NV?+#cjFfa2XEVt;&Gp-+De0aO%HMd zHYoVWJ=~Upc6})3(ChDodjyZ=hB-ukb-sUty~ND!Ez#OMV4U(Ol%C;T+&=GZ$BfUa z4o;F6hU1Nu=x3C8t5AQY1tK%_!pW|YODU|17AgE>5To-7vtNi^gi3(#<`DJk!yQ$JmX!?4{rv!k#QGD8MC$$wNll z?eG8rZffH{bA>iX1YWv-T)=@iV-KubbDpXApqcY<(raKx4dpq#~s`@sjY=CXi_Wv+MFT{mrii=#if1#Hi*NRs#hs4;Kc*H$7n!9>%Zp zsDp4kP-DturTXkD*ie~ja#9)tk{8u$QknNnz*f0)gQ9;rj0b-kd~yIE^^Ysa zc_R8H&1Ikm{!N&8SC_-+gRq4xgAiT_+huJ})-fmmht0uW zCD1@~s_V0w`Jc{S7kslFfHAfN+IeNb2YF|w0=3^eIXx?A$u6|La|93mrjQ1@3g`VS z%#4#xhc$$woHdS}=9AW}W}L9;pP?KMCuyrmPOr=%rX}rVy22dxPSssTFd(S{hd~-K zvp=Y}XRIN!dt2$<>*-ooI8?gA7{$nwYTWd|R&SR-XM*1RleB;;$7C>9eun)fSYtEg zWBzf_A|%~bYeB@>sh12a8vW1fjJQxzW-ueR)q7R;pOn70!#GakB!${j=<5gOKA__0 zuXgUvfng{BXtrIrBfC+KsRlTm>xNHnh0gzL@Pla7084xr@R?2o0J2^xQVrP89{h)c z5EC`}3SDdLkp^{gDFYmMnSZ5c_0*FJx=Z(u1ja582VQ*k&8gbyR>|QbhZu>0 zkDvT{%n2-~Z_T<84i|!QX;=)kiRf`4Anx88vcM>~h&g-aOo4&mzAmAqSN&ym$ZKn~ zo@=*p^Zhmc>wlehC)AnQ$N=CVEs4sD&-$%j3%x*nGQ8aL&Af5})Tfp@!q3wG2xTyP z;Eyn<6o(f2`l8BwYY8C_WJ>4WKxD{@Qs8l8Gnq=~kFcO8(vV7iX9yr+1$Ix*OwH~x zWfKS`Ds}79wzd;mYX{#`<=QSE4h($ZX$wZu|3<-u-dNyF`HH3q(dmmNtG7jowxL`3 z`$LPck@7Blst90uL`aB?s#^JZsk+xHNp|$wdCR?pNjv>LyQp#Egx4aoc0C=04Q()# znnfgHRV+w$I6`^x+~&$$@ezPHUWGvp7-XDrHZNri`#!3f-+Zc2E= zvCU(mzYBc4AIp~Xmu$d6JbRq_9DjwWFL5I4ow3|*Vdc|a3t#AO+RwZQ5rlCB>+@#6 z)?voCY)*F}sSPui``?-2+RqV{8ukJ*+X!tk?#70a(%DV=AeOxSXmfdefB2{S7ZXzD z{c{rHn^$TXPwO{-1qL0MHXAyJF+2v(g8@0IyXvf`tVr*$#={#^ZCru8UfTx#HRun8 z0oPS}#WwYYEFbTHdXh8DuAbdxC#-(oXW-$fz%y%uP0ca!bSEuCKd@}W2e^L?F0Fced>#(`N3l=h7|Lp< z$<7+yUO}o2Z329*wvhpjD=PdSTWWq?Z+kBPH;{ITusw>N(n}Kg_V)fl8KUNw$OW)h za%$DE(q671HS|`!lvtzB_@juiMofUPRe~ntN}aRI)$@m$rUOsDe)bT1E|S560lk8t z{ydqPXQRbm9#bzOrg8qeTyciTnymjD>B-bYmn4zx2p&Cdf{ZMuO^ZLW%w>+&)3BfVq27+4m z#!deDD0e>K>d%+OYUqHC8!KvP^ik0ZFkNS7Vjdh)*_-bV>t8?`_5J<~tEaA42HgV{ zlJkS`y)JIqNU^g2p1eYkuIj2t4DP;jjx;>^9hb%wvH2lBl(D1?5DISyJYPe_k-;gT#G?2? zj!5PsvaDZD>75`Rj_#@4sly;0%1DkA zz0p=yx5c0EZod;R9;`ztE7p(Pk;Yi-pKt#`@EA$w@ggS-XF~JSg^vjzlN4FxeeZup zw^j;_S$-(I7U@*qQ`)agbi~P028~iX)(%4E006;|TkeOHD%#@vZF=Z~zs?vi-Z8O< z95+d-6HK>J=Y!|zGfvvuMaPppvB<;g-X#R2s$)0%d1hTelsE@(F;t_GeG~a7ya3g* zNm4wbt=co9u_RzEHR-hOS|wT7%(8T_L%-+I@x#aA5`Sjot%k3xk4lujxTyMK7ht0N ziHkEnh-oC5zJD)}q>T6f<$ac(>KZ?1GYTv|1e~YsE8A$_s?!#Mr+JS&u^%m7Cp^OY z*y`4P_r50XkYL%LqQ8!~tvq7YxjA=MMGOzlc1MBdPv;A$HK0sXQiV9{OFkqmmhN#> z_#v6)&}HvKD69BlU-P7QtzFn5BI<#^)13&DZy^S(;*Y}RH>auraB@{}09JQy>dcCT zy>hW6{`xWGpoACo14Jd6Qj&dlY|Mefb6g5yP!D0~$SqWswnN0YFlV8Gk(fi=;{GB}hazPhZuhA+JVr|}Ysl=oco(kdfGTcFwi=oQPdJ`* zQj|Z5qry3L!0#3G$FcW^vHBRZ(nvk5fHU4+NNneoLs|BdIF{$_=@qUgGp`_7C-*qa zK{<|TQ3%ND?}u=sV?Oe5#{|3Ak5zPRl(gvY$jQUY`$gbUV<#OGRZWmG{Ro#?;adPW z+MV`*nH!S0B?`OTvKR03(MwLU=Vl$rM{MWo0iqBz67>-1u%h*sw@a*^s0L1)sgMu` zwTUr(BmQSz>jm>wmx8bg%hA#6dkpq$^h*2AQH4$H>eu?bM`cOMnDd4 zvtWldq+wO8_#8flT00Cc+^FgSM(YQbAu{2gvw5H#sd)!si9cPo()a7LGn)qBQnWw) zIzW~P^yBBjj*4Pn@ED`05a7~ey&7k2h2Y~-D-fl!ZI}1Y$ekd*aGyule00~sgYkfL z*#Sj`3zc)8@tt-3`+;Tdv2xz(*#O85T_QXakQ*Dp1=cykZho29n;tLb!4ATf+7>s! zau_{VixcEoA7WrFfWcyWl`#>QX#7lF+d*#|KE{wVv}b7lV0ks-@L3oUK7de7QiKfC z)doIqu6Q^pQU;UO4DDnw(1d(o@YREc_rsF#!y1+=-(lO>ZTE*LHL#AVVAkkdqEwp~ ze{iw2pk?{v@@%vq80KvD==oTROXNPE^o~$xZ&||)r4gUwi}hYuE)GPt@&~3J5$J(P z_^8ROp!!U-kTifEN`ltMu`U_sFYvKcYIB)hrpO<7P`P&+kH^(utXz|4TC&b8asB!_qm6|QoEjGUgM|9@dH z>!)j09whMoJ!Q(ECwZwTUJJo&QgaI4%bxH>-3-fxLRUa%8 z%8A-Mj3ifTRcLcYXI`cTT!YR2@JKkL2@jKq72Vcj(&Fo%L_jpw)qpRZ_>2~*d?uaN9A zO-EPdH_>BkoinVTNgvGtp^$I?(3Nh@@YFY|-*tJZGB((66IEv|FFW|-BHG>2;e~s} zJMR*^E?V=Yffnp!#f}SemOmfZ4XX5#YN<97ncj;iC3l5>mks3(n7G>Y;I_fc^Ceil161%CbXE#j z0Rab!!fh}$|F(X^E?pSf-%C=1Hw55Gtt!*Eec^Sp+Q5w8K z%4Jl6*#nklYg*cYi!bVR*Er4zWlPumdr?z{2SLX_(?maAXGQ3586?;k$YdNWRn%mk z{zm*mPxcxN$#eI4+jWeZ{^NeTNds}YO!*hVYL1zX(n|Mh1|idTM1OCH_ncpZ$(;jN;E3^l9v)XY zrlx%&JRMB5v<@Jioo27J&PkYaW*E(u-_wrTXZ>Tx{KvUHSrMAFEn2VB_DQ-tm?c)o z3yu`z_Jvm$YP=nm-}?048%Y~W;VWoyVS~&2qQtT?L+PtNRbgggK)!qs1KbM7-8ycFV7f1w#Pr)x=_ll-h-Sw6*qMvi_`( zm94lk!2>E9h`IaLu1DNNJ3S<03k?AiM~rnk`ym*&g)mBSW!po4S|I-B4Pp@vX zQu7k73$Fi1Y6C2%zTNM%fr5g_!WS1GyQ9p~v{V0|?6)mYxi%~Ke+a7{rKEA<<*Ny7 zv*4@W-dRVS<=_!ec$`ntN~zw+mIVu`MgLMlqRCz+iJUNhCc97{v`9eHZL?z%4R+yx zjAx-$%L$a@8yxe(Kp6Qe=#IH;@R>ow>db9iCHmdA?;m>(H&!gNk^G4S_8$FzkCxS* z2-G#rM5lx>wEr5`;aswxo?Pr;aAZz&0$I~xH}-%vnzD&+qG6oZFV+Xlvc;sKs%9JtmD*|K&EEY~Pb4Bdi!hYMA z?CU<@Evvwi0V&^KiIpd$d>vf@SB5|hP4rHh%KZC%CVkdq5zNG&(_Y$3e6?*Zj|DSN z4yBg%W54IKb+#$LTNuArJvGJ!TFtgVu;3Xr)t`F($JnEPwdp~BG47k$56v)O7t`M_ z)x9HyY?+>zW#-q$=xE+QrLg|)`qDg%Q@v5AG(98z(jwU>vzC95_a4XIUe50Nr#Ex^ zkiVL?;!LK{x5~K(-4||u|8FdQ6qFEHG4(zRe}1=U-5AR?y)Jl~uii1wl+)LcuXx9T znjJ%b#tF=EDMq=0Uz+LGxwvx>&QL^7vcZJ&+wYd8?IZNJT{VBB5dU>%wls;p8^&z> zK^|HWILwER&{&h3cYP^Cz$}tmsqZk`i zba^rNym^r)HdK-+g5Fm8c#xLngHrg!hxg}c!RJ#nN2xG zB6LV~tHg~JDSE$GpImuO`EMj8WSAL~@`mW~m2PK)1h-!5`t51Sp0L8De)K;rIbb+u zMc5+ehwP;obw@wiT5NgbeZ|nRORZ>&a8DD^E@%CZtO@kMSIO90)Y7r*#lHe$30G9t zS4LLl3xAk1I3uLg-*J;5I|^F8^CRybEa9N(yFEa%3C&lH@tVQ`4nLkxO>FaRDj_$& zJ$r%X%c*RjQ1yCpJ;&DT(+;spsm^UXJ^z4FaRog~i9TF+KwJG(QDEwJxdEf70vFcX zQOkj?s#z3!Ud?nqRs~l$8$giNzFNFso?>&#EiC2sbo$-3gx^dgqJ9*T)5q!7qh?k) ztB(+}OxU_k4VPqo`E@{B=hUBL43o746?$y;3K;SK^Zh`@>s5BcPqryoN2Akgqm8aJ zDZdWHg#tFZ}%VpkE7DOWl!fvVYZt7D&Q_WCj6ouVZtjV?kd^t}}~w zE=|#orohrp{k3RVDWV1zQv><5ia7S*Afmq`PtqwV$-pQoizqu)3|8U9X`{UndP#F`r|#pXf3dV5*Vu;%i=&! zz;B{CqCTAUlr=0>vQ_t9#g0m{AIop~75XMOJb!TeDnmP;x_!SI#d&ytruEC7*i_QZ zz%Fo?(ax_>idAremSoD)c?nvy=1$5}!x0iryD9r324p0Udv=o$__wioXs0-GtaQJU zC8fRlLgCBQ>7UO|7_jy?p+Kt{tc_rcTax;>XH^zxvEIeO2ketktAX=f_pevda-VoI zua@EnDsu7k&ti-#3|){1otw7S-R|Hk|JG_7QuB6AEh3Gs*L^-!e6QrWMm|Y>!Lt1C z%F?RA8WL1J-3OF!CN*_)h7w%oN6W|}FlHW=Z%%1Rj?O2{E8{M2rvxB#>2r*5H(?il z$Ymcx(%e@48Xv=q(;INwhB_-Q?stdwXy%2uKe$}#ZA+-0IJ6_nDLD0@dd^RbV9hc{ zuY{Ek9z8)oWv*Br7R2sY9G(DN(F=4(w&D6tywe#=r7g#9`o#7c?47OuSaXF{|BP<@2OqomOQ+y z$AUpATMAmQS6gf-YXJn!R1^<1*_@GUFMqGMWbQii!apVVd!;J64i&m&tL4GQO2M5W zNpI4xQH>j2wCm5?*EXTFGgbDAHFlg-++bdvy@dO3Ajd9;oFBRqW*l-}WBht~$F)

0NZEK6^4jmml!z@~&rn8>qew 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 url-without-page so we do this redirect early for optimization + val builtUrl = if (page == 1) url else "${url}browse/newest?page=$page" + return GET(if (queryString != null) "$url$queryString" else builtUrl) + } + + override val name = "Pururin" + + override val baseUrl = "https://pururin.io" + + override val lang = "en" + + override val supportsLatest = true + + override val client: OkHttpClient = network.cloudflareClient + + override fun latestUpdatesSelector() = "div.container div.row-gallery a" + + override fun latestUpdatesRequest(page: Int) = pagedRequest("$baseUrl/", page) + + + override fun latestUpdatesFromElement(element: Element): SManga { + val manga = SManga.create() + + manga.url = element.attr("href") + manga.title = element.select("div.title").text() + manga.thumbnail_url = "https:" + element.select("img.card-img-top").attr("data-src") + + return manga + } + + override fun latestUpdatesNextPageSelector() = "ul.pagination a.page-link[rel=next]" + + + override fun mangaDetailsRequest(manga: SManga): Request { + if (manga.url.startsWith("http")) { + return GET(manga.url, headers) + } + return super.mangaDetailsRequest(manga) + } + + override fun mangaDetailsParse(document: Document): SManga { + val infoElement = document.select("div.box.box-gallery") + val manga = SManga.create() + val genres = mutableListOf() + + document.select("tr:has(td:contains(Contents)) li").forEach { element -> + val genre = element.text() + genres.add(genre) + } + + manga.title = infoElement.select("h1").text() + manga.author = infoElement.select("tr:has(td:contains(Artist)) a").attr("title") + manga.artist = infoElement.select("tr:has(td:contains(Circle)) a").text() + manga.status = SManga.COMPLETED + manga.genre = genres.joinToString(", ") + manga.thumbnail_url = "https:" + document.select("div.cover-wrapper v-lazy-image").attr("src") + + var tags = "" + genres.forEach { tags+= " <$it>" } + + manga.description = "Title: " + manga.title + "\n\n" + getDesc(document) + tags + + return manga + } + + fun getDesc(document: Document): String { + val infoElement = document.select("div.box.box-gallery") + val stringBuilder = StringBuilder() + val magazine = infoElement.select("tr:has(td:contains(Convention)) a").text() + val parodies = infoElement.select("tr:has(td:contains(Parody)) a").text() + val pagess = infoElement.select("tr:has(td:contains(Pages)) td:eq(1)").text() + + + if (magazine.isNotEmpty()) { + stringBuilder.append("Magazine: ") + stringBuilder.append(magazine) + stringBuilder.append("\n\n") + } + + if (parodies.isNotEmpty()) { + stringBuilder.append("Parodies: ") + stringBuilder.append(parodies) + stringBuilder.append("\n\n") + } + + stringBuilder.append("Pages: ") + stringBuilder.append(pagess) + stringBuilder.append("\n\n") + + return stringBuilder.toString() + } + + override fun chapterListRequest(manga: SManga): Request { + if (manga.url.startsWith("http")) { + return GET(manga.url, headers) + } + return super.chapterListRequest(manga) + } + + override fun chapterListSelector() = "div.gallery-action a" + + //TODO Make it work for collections + override fun chapterFromElement(element: Element): SChapter { + + val chapter = SChapter.create() + + chapter.url = element.attr("href") + chapter.name = "Read the chapter" + + return chapter + } + + override fun pageListRequest(chapter: SChapter): Request { + if (chapter.url.startsWith("http")) { + return GET(chapter.url, headers) + } + return super.pageListRequest(chapter) + } + + override fun pageListParse(document: Document): List { + val pages = mutableListOf() + + + val galleryInfo = document.select("gallery-read").toString().substringAfter('{').substringBefore('}') + val id = galleryInfo.substringAfter("id":").substringBefore(',') + val total: Int = (galleryInfo.substringAfter("total_pages":").substringBefore(',')).toInt() + + + for (i in 1 until total) { //TODO 0? + pages.add(Page(i,"", "https://cdn.pururin.io/assets/images/data/$id/$i.jpg")) + } + + return pages + } + + override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException("Not used") + + override fun getFilterList() = FilterList( + Filter.Header("CLOSE. THIS. TAB. NOW. [please]"), + Filter.Separator() + ) + + + override fun popularMangaRequest(page: Int): Request = latestUpdatesRequest(page) + + override fun popularMangaFromElement(element: Element) = latestUpdatesFromElement(element) + + override fun popularMangaSelector() = latestUpdatesSelector() + + override fun popularMangaNextPageSelector() = latestUpdatesNextPageSelector() + + override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { + var url: String? = null + var queryString: String? = null + + if (query.isNotBlank()) { + url = "/search?" + queryString = "q=" + URLEncoder.encode(query, "UTF-8") + } + + return url?.let { + pagedRequest("$baseUrl$url", page, queryString) + } ?: latestUpdatesRequest(page) + + } + + override fun searchMangaSelector() = latestUpdatesSelector() + + override fun searchMangaFromElement(element: Element) = latestUpdatesFromElement(element) + + override fun searchMangaNextPageSelector() = latestUpdatesNextPageSelector() + + +} +