From 5c426e3fa22f2c41a79bc2182218568db17ede38 Mon Sep 17 00:00:00 2001 From: Keith Fernie Date: Thu, 9 Feb 2012 21:15:41 +0000 Subject: [PATCH] =?UTF-8?q?=09modified:=20=20=20statusnet.tgz=20First=20ur?= =?UTF-8?q?l=20shortener=20is=20a=20custom=20YourLS=20url=20=E2shortener,?= =?UTF-8?q?=20if=20it=20is=20configured.=20=09modified:=20=20=20statusnet/?= =?UTF-8?q?statusnet.php=20First=20url=20shortener=20is=20a=20custom=20You?= =?UTF-8?q?rLS=20url=20=EF=BF=BDshortener,=20if=20it=20is=20configured.=20?= =?UTF-8?q?=09modified:=20=20=20twitter.tgz=20First=20url=20shortener=20is?= =?UTF-8?q?=20a=20custom=20YourLS=20url=20=EF=BF=BDshortener,=20if=20it=20?= =?UTF-8?q?is=20configured.=20=09modified:=20=20=20twitter/twitter.php=20F?= =?UTF-8?q?irst=20url=20shortener=20is=20a=20custom=20YourLS=20url=20?= =?UTF-8?q?=EF=BF=BDshortener,=20if=20it=20is=20configured.=20=09new=20fil?= =?UTF-8?q?e:=20=20=20yourls.tgz=20sets=20up=20the=20config=20for=20a=20cu?= =?UTF-8?q?stom=20YourLS=20url=20shortener.=20=09new=20file:=20=20=20yourl?= =?UTF-8?q?s/README=20sets=20up=20the=20config=20for=20a=20custom=20YourLS?= =?UTF-8?q?=20url=20shortener.=20=09new=20file:=20=20=20yourls/yourls.css?= =?UTF-8?q?=20sets=20up=20the=20config=20for=20a=20custom=20YourLS=20url?= =?UTF-8?q?=20shortener.=20=09new=20file:=20=20=20yourls/yourls.php=20sets?= =?UTF-8?q?=20up=20the=20config=20for=20a=20custom=20YourLS=20url=20shorte?= =?UTF-8?q?ner.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- statusnet.tgz | Bin 15064 -> 14700 bytes statusnet/statusnet.php | 22 ++++++++-- twitter.tgz | Bin 8932 -> 9031 bytes twitter/twitter.php | 25 ++++++++--- yourls.tgz | Bin 0 -> 1384 bytes yourls/README | 8 ++++ yourls/yourls.css | 21 +++++++++ yourls/yourls.php | 94 ++++++++++++++++++++++++++++++++++++++++ 8 files changed, 161 insertions(+), 9 deletions(-) create mode 100755 yourls.tgz create mode 100755 yourls/README create mode 100755 yourls/yourls.css create mode 100755 yourls/yourls.php diff --git a/statusnet.tgz b/statusnet.tgz index 4067e682f847b66514e07e6c4698d07a505e6892..5865f1513301106336edef626e7791cdd74710c8 100755 GIT binary patch literal 14700 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 array( new Slinky_UR1ca(), new Slinky_Trim(), new Slinky_IsGd(), new Slinky_TinyURL() ) ); + $yourls_url = get_config('yourls','url1'); + if ($yourls_url) { + $yourls_username = get_config('yourls','username1'); + $yourls_password = get_config('yourls', 'password1'); + $yourls_ssl = get_config('yourls', 'ssl1'); + $yourls = new Slinky_YourLS(); + $yourls->set( 'username', $yourls_username ); + $yourls->set( 'password', $yourls_password ); + $yourls->set( 'ssl', $yourls_ssl ); + $yourls->set( 'yourls-url', $yourls_url ); + $slinky->set_cascade( array( $yourls, new Slinky_UR1ca(), new Slinky_Trim(), new Slinky_IsGd(), new Slinky_TinyURL() ) ); + } + else { + // setup a cascade of shortening services + // try to get a short link from these services + // in the order ur1.ca, trim, id.gd, tinyurl + $slinky->set_cascade( array( new Slinky_UR1ca(), new Slinky_Trim(), new Slinky_IsGd(), new Slinky_TinyURL() ) ); + } $shortlink = $slinky->short(); // the new message will be shortened such that "... $shortlink" // will fit into the character limit diff --git a/twitter.tgz b/twitter.tgz index 740e3c8178280205941be90a502fe164a948a0b9..ee5caa899bc5ed51a996f997528e2c5707ce46bd 100755 GIT binary patch literal 9031 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 literal 8932 zcmVWt#yOil7YZq84972|Zt3Y-SBZ}F2F;M2^ zBz;a6frO-LKdatEKE?~*{EUmWiJZjhQ3c}(z@0c{fHfz}3czx7e>YA4FI|fMdpMUH z{#yJ#*JWR$4*gH<+ATR;|I?DYHt7FfaXm6w0;|F^li3H*De znwQ{DW3gvJ$<=U;z1lGmzQ_9e4i#f!nq7zgzv9Es@BI~S-XP`QDdh<)BXPVBm2h4* zCe50ZZcR)VzS;?+W7^>X#k^ChWCS)Q*TI*us5d9DmAp_cqP*hNCX05?1mLX-dgYe5 zA2{~h82{6|ZrX6){(ap#K4(s13iQu3?uq&$H=3ARuy%GS^ZduUk3RhHXm|IMI$ihV z@$=`Wys+o7>oZ6GSoB88?WMQP$zL_V{mN_qxaKW?zg|;sTlAc#>!;_wUuL^-=XDiR z-@dBV%`enAw>kEuAFkPF_#u7&xfjHWAu*qf9GuXyPrLCGOT|}p@1A~i)STB6U7NmqNzVniG_>fM$+pTS;izztXyn5!mmYpVl`B2r@kJ>kVVH;lb z%_F>i6Kel&3$* z@6g`2{r*M|J=SvLvKw1=dFJ-c_F>IdxlS)@+k4Hy##dPef7kx2;|0rWcAP2R5kKUa z_2agVx-~7K`Lx@wT61K@=%SORSK3~abRloy-LF;IzrOF-g3OzGbeu3NeSO|__styr zu$5WqmuRNc1*OHr`DcW4TJ$vnUlLmj%_@=}2Pft(XFz%%T z%{Q(-^1u?u;elW5OKb7P_Hhs1VX;5hGk0am*nJ;+_N-a=N-s~>wmobsUwr5Uf5`Rz z4_Ds(%E%}3<{X^0_Uw{VCwF)2{-ky2lF|K+Zfe;v^UdoPuj0nF9^!T_YuwqocS`3E zu0Ir8{=*wjrH_u=me}-xhj+TVS08BnaCy<@Ezk9TwdW&!=Dd5X)u*ezZ@F#Bvzy*~ zf32aQU6tLs{nzi${967)j-~6eH_lCKANTDkhl4%tK6}?5%hKaJR!*q8=QG=DJ%+x2 zYW(P&)2~l_Twkn_2Ho$UeNS>&cyGz8}`K>hu$ZC$_IXHtY2j z51V$rp7-*O9|2KI>arhys5v+1*Vo3SpSZoJbyB|*mPYrL#_lT1owDshx10McKYyV5 z)`N!*9pCUk<G4TLn+gWUC*AaTyR)y28@IW7?+SOvS4Wj|^X4_0bKiHj?Ykwj_5S}Xv@ic) z@1&O(PT9HS)Y!A@t4B?qf%?s#b#$t|P4C%L7ZhH5z_$2cMe5DXyKOOkF{JIsQ=WOg z@tSiJx@>-~d(zxHR&IRk^JB-hzWmJz=0w%P>Q#1$scQaSjJ zj2XWzcxT*^cdv@ypL73}S4`c}ch{7cw{&@NYfYuqRU{Oxt3G43Y`$^Psr4Hc{wVDG zy272Ycg7XAJ>LyZfA>_EUGX1hEuGTAy0TTjS06e&<9y1rrY(M{x%J6rR|;2*>an2r z@v}dlpLNx8$CWFR?6+MxyZ^%|=DMfOOMB_^n4A>yLN%aL;`Lv>zoB=3Z|`0+p15{F3&)jUs|pG~Xnc0^)>~Sv z`Tp&5>BH}tKAwO3^OZ%GSKl#I7Y(wd4ruh#)@@s7pZ0p3 z&$rufQ|}$$OQ*jYV!VEOX2SXW)HPK*j(2Y}`pRPkXV1n+)3-i7ZCcS%_Z1myjh0W^ zF=-F(YU&@a^o^rm}UO47>mgCmW!+&~l-l27eJwwkVKG$LFL|e|H z2jX6syldVa2bwR}KY9PRx@M+fcW#)nee#>G-M)VhIAzFv>FHKKH#uYYZqco0f7y6# zyU%t{K9p(d(P4qHDAk^E*R-d~#m-;+H2T@>mt*FAHhyQP(_gK=cVN&)C1i=B2Ga`S^O_>e-_|$!NLn+|ja4=l|U~CI6xH#ft+Ec8*y*u&M6V_S1Uj zjoenXch)-Y&8r@Je?Y-MA86J!)3s&9om-qv=M(FnocVR3b=A7byHCII?Wgnm{!+5% zyKOTU&bce??3~d9pG{c2=a(6dMjKBrdHHPTIZtotTe$ukf6?xJk8~W|@AaH#7p(B6 z-nAm{_!Cd}dg|*dU%sZv>5@+|_y1%z4dfZcjF4w12_U z%`o85y;)y=@R8%R_4P?x4!$uy`MOq{3I}}Yz7dS|q5Ioj^}^oOFLjvLI(_elH-ET# z_NP4uGuIB7|L=)qsk-!0Z?)TDV48~^&#mj!c1mn=<7e-mGyn1R&2Id0-HN7X7w>9w z($Rd#YX_4Lj=N^U?zS~QmfmK|uJPu^%0|zFaD8 zZXExd<-o~nXKa47Q=9$Ee-O_;`OO=BE^O*F`9hCb_xiK%Tz+%Xfi@$5-cb5__jl6& zfzIz-)V)cEd4~qxaK7mm!lWJrragDyh^-)hV6WGE-aYQ}#D7ZsUzDHQYe4?xff;_) z5&w5hP3jg_|4B_w>edkd{}q=FE>uE=01fg4T$~T#d%B+0sDv-$7!md2*mB6;-MrJO zLkLOauEi0&Yh)yo%Ufmfv64>L@v>e34wfu&b0T6K4oEEEgFPS!tWWY(qkzu=SUcDX z*2DX~aLMd}%SYl_$zU+(-xj5Jxd=XGUgzaOj{k$l0Wt@kT zs_`87D(T=pC!lzLpv=SBCjyiaI0Ly3wk|70zB#WJ~rlfhj9-R*BVG(;z z05W1cO2k?Sxbv9F6o8*OX#^^(M!E3K&3M5YdORHC1qmEbPy&POtWRXAgkl)Q*i=*pCnuB1Jy|Az`m<#) z){J@<_fqDW%sK|;6&DkH2wOy{+CvQz0Y{8!2y4kozyQvR*#hLU6>}~h<{Z`+oxBGd z5EUbiwORzV2Ew@mWmLlHMii>?3~W}1@suq9mO0h|YKILso?&4ER`6J(fT*HXB>S^c zmgR*YMpy=S`*`>=kg4#8#BPANa21TiYW)fPi*A##xlOUF9#A48wRi$cM~aAA8bN1q zOOz-UzuQlVhob-#$0X#?2g3|vHK?K2Fk+a2Og4-_*+?%hV@4K>MNhRBTUs$h-7!K$ zK5NlZM75L$fd>ZbV2UC|PTu3;E6KM?9(xW})akT{$v9xlG=~@jKLc4-U9eyNP=vL@ zkXaW1ic~Zh#rb(f`6UV%-4LqSKzw5TeOjlD&7zO5ROOA8ovor5a335f6+#Kz5G!G$ zA)4}uGJ_f=ZnJB79qmr$O0(8-$03u1H7^_G*lJ~%d^M~_chfT(TYza7q z60j+Npv>=K?7&=b71Tk8suU3*qF0m<6&x5Cku0H)*qNW`of~99rk75pOK1=y`v!zb z>}JT`sALeZAxf*vvgyhKk_7k|N%%y}t{ijleiGZj1O~*k5|s&jrAU0F&%sw(C8o?o zHbC498dNY4IR)OU)5KK3ZhTut1wdjo$L5fyv=kL?;&m;EIy8EUCCQ?#!vF|slqLi@ zyrRqpfQJ1Q;}I3lRZVBY+JvqcCjuyF(Pdu>{4S6~5+^5s>Vxk3iPI4S#Nj&wo)8-y z%0Puo;E}*ZIdt-#F2XzqCxSdwD=KPtv-WaS##gbT1r_>;QKh15g^~ELE>eW!u}e|H zSlNAQ1(R0&a*k_%~ygcdjNWdlBrlnJd)8kLkYINiZ9p_P^u za{w}AJb(}``-PSzan7bjGcXP#foeg6K3A^DvgK_`%~Ao?pJs{~DG7EDg9{v*^idrY z5+i3QYh0vGL(&{Z4%+gx$qmVAjQCS$In6OCu+%yqgnN+kkcdSMbtE;+#plii@v1s<3>u^x=tJH;Xkj!$?BsnyZb$$+u*(*sEKuL<5QHiLf=~=J|49lu}`gEM1Wz7wNRb*%!-7qApfZN*kVSG}sjz zZ&NsEFe5`~txppg;D-uw>I73Jss~&f&fG2;IGtt6j938Qw?TBtcr??)f=KbNhAQlu)0{msFy_n+fq7AZ=$hXgwTM@WF z7~&M0pBh!8c7j>;;%0*?r~sDpNfnI8s6a5G>}-@o)+A6Jtn(59+sdl(EC##`StB+M z96ab3*nn(g)UGGPR+j9647Ae5I4gF!|((kS^^L)tOsAo zW0fv^g~T*j)*Fxo1(CDBQgUy867I@}udrsU1xZH3AWVW_>CRxnqiNf|Av0DNi!E9- zUWRZS8G)g3bjNkE6e|%9b|ks>C<6@EU^!>-9x1^hxiSo)Bo1}$5OD(iV(~i2*s;nO zXB$*lT%s~7fzC3ROh{dmj^#vHL>{h&ewr$TVT6f_2V`II@CQN%jvhrtsaU9$1V9VG znuC>2If913)2a!YDLggKh&M`G~_g=m|_4Y zN}!4Xk*0OQa|%WC%*aFYFyv)ioE_KMsT{d+?+2C+Ir1>Lcu8|04{)drk_VTRP3d>TgY+T=|Wyy_237A|u%U^XRrkD~weT0xF_lA_GVloMDF z&(P{gE;+w1)}9=ivCfm440dl0ay~AyEb19>p-!pE5fEKGQ^`~taY+CxR2d_(kYgK7 z7K2q0bgLS|)9fQ?h!h*+F?rUgaNO12)@jDtvgQ$Ji7?$hI#js#2)-$1aNN5eX;ZIKIpA`rw8m zq&Zij$4XI}tF>)JN}m?Uf?{caTfx@cNCBZIT0wr0?_uXEn&viAhagMJQc%W{4mUom z5iQu$O+-W6EpF%i)j=ho^&RZGC?uliv;rdcV0m$mmZzFxmIeCA`&>EHyJcDBuOuuB zzB_=w(augqmO|7wNM1&X4=fR>1v${=Mzf_w{f(5x5Tfdl#0c;-TW?be;5k{G*M&sE z4naalETQ==13h9q5?%#3*`IfXw*eY3CM#E|=XS*Y?bCzLcaglpuqkCKeQ2wROZEo?QtCiV)e(9y@%I-w9UD{yEM91cky zB3Jf+Z{!B%Og+IT*8_gCc7cm)wVHUT%WFef1rJhI)H+;JGt=iN^~R`^qWNd47ODiG z+J2xUv@EE<2&~{X5fO-Dxrj(ZUuzJ>Sgp$oF=MLB^96lJSkJU_G>CnJG7U_L2Ph}f z*N7OBnc0bXkUKDy7mC8$EEO9Wo;dt@E<&we$WGa;x?>8%!AcD05u-Q@qd_*HR>&kd zXSGe!<*8tB5mm>j7~wG37VUl79jB-E282^y9FinjIk%Cw1Zl4RBnv1yLnz@)pvsMTOV?q zj*QrTnh<@lORgg*g#(fGGdP>`R4XM5Hhn3P{j@p?Z6Y;2}<}hdMG|dd(RQN#d2%2j}kL#lP16OSqq{3#~|!DofWvQFT}tNi_+jLRAe1>vUhW38SWc zRx6OdgYsd0xZ%WCAFFna989V2iv&-cE(5uPi`7MO%}DK8E z!--b=meh?!?Hma<5NMCg$pLFz*)Rj^;Bfge#s z?)E@xWmg_GEPNE8oq-Zbxd+#_IVZ{;RDkF!IS#Yxq-0kIZcGG!qd8>4gbo5{{G3e$ zPihCi7{5#0dPw<-oQX#vLlWSsh!80fhYbm>6RUjJOaZsKKg(#5k4kB8jOMUg zhMJ*fSM~t#QQMeI7NfO8Gjj2AJcipWEr3h^!ajZSi)_8}dzSX0cHmOdqR_GQjcL|e zR%YiNtUM}~S~Hf==6B^yabBj%hR-9g`locy#3zk#%cA^t0}h1~AEla*(=|Ts>8&T%u4}sZ7Z~520;|rLU(;>f7&PBz1{* z#xu!@R5sG<$-U?lr*BhhQ&4(GCL?V$Hd14NKPxBL*pP#X4)}4d%!qcz!Qy5K%@11O zSL^Xfk31MMhG12W45Pnkq4eU2Z1@a08{q}~YbNwpAi2NA$GjVh7w z7BCd`XAG2|6H$LIL=2ExH6tOt#ezG=6sUR`1et=Ft`;fP-#q{tLLfwtktH%vMrn-T;HlWX;N@x4nldJn22>aetmUL%foK_ElaXMe&RHwovPj1X ztcZPjHlkXYkb|wW(LjGDgcYsy02hRpvPgblK-pM5Fq}-SW`x8fB5mW0kop?gDMtE4 z+Ehu-PY4L?8%<+$vD%;Tjm?fV8iQ?YT8nQo#m4r)rE09_SOC>i?2xw}V3^WM82017 z7lAF?W|&tybhVwrq`()WxttJe%-X%xJw<8f2t%Coa4LuJ#gT{aw`bQt(QF@%oSMjGQG{q*acpMh*gmy z5CVhzyT?S5G?{`Kixas(l<_iVL^3Wj%`D8w&3gQ1G>om11cu%dM-X@+z8`?f0vkeX zTD%UPu)%t$e&^R_%u#d5LW;|dTuW`b(JrS*QQa%5u>e_A7i%Jn`@3JYYq%P&hO6Of yxEij8tKn+68m@+`;cB=Vu7<1OYPcG%hO6OfxEij8tKs@fuKxk_5N479cmM#OJYQ4* diff --git a/twitter/twitter.php b/twitter/twitter.php index a6f73c864..11b92d4ee 100755 --- a/twitter/twitter.php +++ b/twitter/twitter.php @@ -269,10 +269,25 @@ function twitter_post_hook(&$a,&$b) { $shortlink = ""; require_once('library/slinky.php'); $slinky = new Slinky( $b['plink'] ); - // setup a cascade of shortening services - // try to get a short link from these services - // in the order ur1.ca, trim, id.gd, tinyurl - $slinky->set_cascade( array( new Slinky_UR1ca(), new Slinky_Trim(), new Slinky_IsGd(), new Slinky_TinyURL() ) ); + $yourls_url = get_config('yourls','url1'); + if ($yourls_url) { + $max_char = 135; + $yourls_username = get_config('yourls','username1'); + $yourls_password = get_config('yourls', 'password1'); + $yourls_ssl = get_config('yourls', 'ssl1'); + $yourls = new Slinky_YourLS(); + $yourls->set( 'username', $yourls_username ); + $yourls->set( 'password', $yourls_password ); + $yourls->set( 'ssl', $yourls_ssl ); + $yourls->set( 'yourls-url', $yourls_url ); + $slinky->set_cascade( array( $yourls, new Slinky_UR1ca(), new Slinky_Trim(), new Slinky_IsGd(), new Slinky_TinyURL() ) ); + } + else { + // setup a cascade of shortening services + // try to get a short link from these services + // in the order ur1.ca, trim, id.gd, tinyurl + $slinky->set_cascade( array( new Slinky_UR1ca(), new Slinky_Trim(), new Slinky_IsGd(), new Slinky_TinyURL() ) ); + } $shortlink = $slinky->short(); // the new message will be shortened such that "... $shortlink" // will fit into the character limit @@ -282,7 +297,7 @@ function twitter_post_hook(&$a,&$b) { // and now tweet it :-) if(strlen($msg)) { $result = $tweet->post('statuses/update', array('status' => $msg)); - logger('twitter_post send', LOGGER_DEBUG); + logger('twitter_post send' , LOGGER_DEBUG); } } } diff --git a/yourls.tgz b/yourls.tgz new file mode 100755 index 0000000000000000000000000000000000000000..6778dfbcc45c4dbb6f7f135a8faba6c3ade3dc77 GIT binary patch literal 1384 zcmV-u1(*6CiwFQ$CNxh11MOICZ`(Kw&e!-?@Vwrf4vn2ONdu%!h5_rotalrh-2sPf z2oy(&g*dWd$?bZ>{`*m~oWyRjwtMMtg9)^bDUzZdQWUN0C{04))qW(kkovuzej=5h z`ggnCZ+BbWey`uDwc73W@o^1$wFjV7NRj~5k|>g2lDlpEe@fR`{IiD}2l2zl|D=1; z$>QJd_FLU9#=mpi>eirD#s7!X*;9nCl)+`Kgo&?;2)h0>iszte!^nOB0j*E zIpb6S(E=A^Kq(MGlt{{H0`n*V8BiEYB2&Ssgvapqib;uMahNU`*Czj_iO}ZSZcDvC zOC_2Zz)Q+x055358HKYz%6Q;;^Mp}8V@u+$XxC-Zi<4;1Lh3D*^hoLBpJ!R~l>5p{ z$TE3?lSvYWjYIfk)f2j40^OJdQM7D0nKKhXrDS{|oFj0^Y!-3v#%54M#-Nti=p3Hj zW_A)sLVk_yOc5urK3g{zmh!^VQvQP$cbnmFUmhSKbK*yQ&K3gO`?Rto*_QVM>Myl? zqp@w^5T1eqW^`zqA2#v^;OH`7S-GpIw%5yiLNj9)%^AA{KScjAoF*HZ(=hUv_Q*Lc zNCq7p2ib5;aUZX%fr{Cgrvy%K7-#5m=0g+zHLns9$28H_>$zM=rZg-|YNo9YjcvA_ zJMq_>ivgHJAooD4l$~HaPG!lsy_K#usG#Sg6FquK!jziq-AXps(b-tE@8K#(+c^3m zCAh$Bz}bQKwl5~<3b<^`--IUD*oBW7+kj*kgL@*B+xY@aYmr@8B1D0>Ky92h? z*a28Rwg&9AVcZk2wH*W4=Dh&ghP?x{b(Q%_(CT{-!)Rk8^xl}H8BAu?7Tq6V{<9p_7Hfk4EVp!YGubI28 z7vhZ&jx{#}P{rCTV-w2t(f;|iUO_iYreT=shT-;pK}qC&Nx^??QdG-WziZRADUF+k z=-w?@sb<{4(!Q>&w2|&$DQnaiml&V2863+j)a#7TqlOAxHncwZK#)s1b9ErkUtK8K z&ls{_`1>C_w4ZSQ)9Ll|`=4I#q@}+9+x<@U{r?d3$W(~zsKDwl4 Plugin settings. diff --git a/yourls/yourls.css b/yourls/yourls.css new file mode 100755 index 000000000..07a73d3a1 --- /dev/null +++ b/yourls/yourls.css @@ -0,0 +1,21 @@ +#yourls-label { + float: left; + width: 300px; + margin-top: 10px; +} + +yourls-url { + float: left; + margin-top: 10px; +} + +#yourls-submit { + margin-top: 15px; +} + +.yourls { + text-align: left; + width 100%; + margin-top: 25px; + font-size: 20px; +} diff --git a/yourls/yourls.php b/yourls/yourls.php new file mode 100755 index 000000000..bbaa96b9e --- /dev/null +++ b/yourls/yourls.php @@ -0,0 +1,94 @@ + + * + */ + +function yourls_install() { + register_hook('plugin_settings', 'addon/yourls/yourls.php', 'yourls_addon_settings'); + register_hook('plugin_settings_post', 'addon/yourls/yourls.php', 'yourls_addon_settings_post'); + +} + + +function yourls_uninstall() { + unregister_hook('plugin_settings', 'addon/yourls/yourls.php', 'yourls_addon_settings'); + unregister_hook('plugin_settings_post', 'addon/yourls/yourls.php', 'yourls_addon_settings_post'); + set_config('yourls','url1',trim($_POST[''])); + set_config('yourls','username1',trim($_POST[''])); + set_config('yourls','password1',trim($_POST[''])); + set_config('yourls','ssl1',trim($_POST[''])); + +} + + + + + +function yourls_addon_settings(&$a,&$s) { + + + if(! is_site_admin()) + return; + + /* Add our stylesheet to the page so we can make our settings look nice */ + + $a->page['htmlhead'] .= '' . "\r\n"; + + + $yourls_url = get_config('yourls','url1'); + $yourls_username = get_config('yourls','username1'); + $yourls_password = get_config('yourls', 'password1'); + $ssl_enabled = get_config('yourls','ssl1'); + $ssl_checked = (($ssl_enabled) ? ' checked="checked" ' : ''); + + + +$yourls_ssl = get_config('yourls', 'ssl1'); + + $s .= '
'; + $s .= '

' . t('YourLS Settings') . '

'; + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + $s .= ''; + $s .= ''; + $s .= '
'; + + $s .= '
'; + + return; + +} + +function yourls_addon_settings_post(&$a,&$b) { + + if(! is_site_admin()) + return; + + if($_POST['yourls-submit']) { + set_config('yourls','url1',trim($_POST['yourls_url'])); + set_config('yourls','username1',trim($_POST['yourls_username'])); + set_config('yourls','password1',trim($_POST['yourls_password'])); + set_config('yourls','ssl1',intval($_POST['yourls_ssl'])); + info( t('yourls Settings saved.') . EOL); + } +}