<?PHP
$username = (isset($_SESSION["username"]) && preg_match("|^[a-zA-Zа-яА-Я0-9\-_-]{3,255}$|", trim($_SESSION["username"]))) ? uc($_SESSION["username"]) : false;
$tranid = time();
require_once($_SERVER['DOCUMENT_ROOT']."/merchant/payment_config.php");

if($merch == 1){
if($x2 == 1){
require_once($_SERVER['DOCUMENT_ROOT']."/merchant/webmoney/wmxml.inc.php");
$period = "0";
$pcode = "";
$desc = "Payment of ".strtoupper($_SERVER["HTTP_HOST"]).": order $tranid, user $username($id_user)";
$wminvid = "0";
$onlyauth = "1";
 
$r = _WMXML2($tranid,$sitepurse,$purse,$moneycomis,$period,$pcode,$desc,$wminvid,$onlyauth);
$kod_result = $r["retval"];
		
if($kod_result==0) {
$p_reyting = $howmany*$b_payout/100; //рейтинг пользователю за вывод
if($referer > 0){
$r_reyting = $howmany*$b_payout_ref/100; //рейтинг рефереру за вывод
mysql_query("UPDATE `b_users` SET `reyting`=`reyting`+'$r_reyting' WHERE `id`='$referer'") or die(mysql_error());
}
mysql_query("UPDATE `b_users` SET `paid`=`paid`+'$howmany', `reyting`=`reyting`+'$p_reyting' WHERE `id`='$id_user'") or die(mysql_error());
mysql_query("INSERT INTO `tb_history` (`user`, `date`, `str_time`, `amount`, `method`, `status`) VALUES ('$username','".date("d-m-Y")."','".time()."','$howmany','WebMoney','Выплата сделана')") or die(mysql_error());
mysql_query("UPDATE `tb_payme` SET `status`='1' WHERE `user_id`='$id_user' AND `status`='0' AND `payment`='1'") or die(mysql_error());
mysql_query("INSERT INTO `tb_allhistory` (`idus`,`data`,`doing`,`title`) values ('$id_user','".time()."','5','Выплата WebMoney на сумму $howmany руб.')") or die(mysql_error()); 
echo "1";exit();
}else{
echo $infstart."Ваш заказ принят. После проверки Вашего аккаунта на соблюдение правил, Вы получите свои деньги.".$infend;exit();
}
}else{
echo $infstart."Ваш заказ принят. После проверки Вашего аккаунта на соблюдение правил, Вы получите свои деньги.".$infend;exit();
}
}elseif($merch == 2){
require($_SERVER['DOCUMENT_ROOT']."/merchant/qiwi/qw_xml_inc.php");
$qw_purse = str_replace("+","",$purse);
$description = "Payment of ".strtoupper($_SERVER["HTTP_HOST"]).": order $tranid, user $username($id_user)";
$result_pay = QW_XML_SEND_MONEY($tranid, $purse, $moneycomis, $description);

if($result_pay["status"] == '50') {
$p_reyting = $howmany*$b_payout/100; //рейтинг пользователю за вывод
if($referer > 0){
$r_reyting = $howmany*$b_payout_ref/100; //рейтинг рефереру за вывод
mysql_query("UPDATE `b_users` SET `reyting`=`reyting`+'$r_reyting' WHERE `id`='$referer'") or die(mysql_error());
}
mysql_query("UPDATE `b_users` SET `paid`=`paid`+'$howmany', `reyting`=`reyting`+'$p_reyting' WHERE `id`='$id_user'") or die(mysql_error());
mysql_query("INSERT INTO `tb_history` (`user`, `date`, `str_time`, `amount`, `method`, `status`) VALUES ('$username','".date("d-m-Y")."','".time()."','$howmany','QiWi','Выплата сделана')") or die(mysql_error());
mysql_query("UPDATE `tb_payme` SET `status`='1' WHERE `user_id`='$id_user' AND `status`='0' AND `payment`='2'") or die(mysql_error());
mysql_query("INSERT INTO `tb_allhistory` (`idus`,`data`,`doing`,`title`) values ('$id_user','".time()."','5','Выплата QiWi на сумму $howmany руб.')") or die(mysql_error()); 
echo "1";exit();
}else{
echo $infstart.'Ошибка выплаты. Попробуйте повторить запрос позже!'.$infend;exit();
}
}elseif($merch == 3){
$comment = iconv('Windows-1251', 'UTF-8', 'Выплата с '.$url.' #'.$tranid.' пользователю '.$username.'. Благодарим Вас за работу!');
require($_SERVER['DOCUMENT_ROOT']."/merchant/yandexmoney/lib/YandexMoney.php");
$ym = new YandexMoney(YM_CLIENT_ID, './ym.log');
$waletInfo = $ym->accountInfo(YM_TOKEN);
if($purse != '' && $moneycomis != ''){
if($moneycomis > $waletInfo->getBalance()){
$pay_message = 'Ошибка: недостаточно средств';
}else{
$paymentre = $ym->requestPaymentP2P(YM_TOKEN,intval($purse),floatval($moneycomis)); //Важный момент делаем запрос на перевод
if($paymentre->getStatus() != 'success'){
$pay_message = 'Ошибка: ошибка системы';
}else{
$paymentpr = $ym->processPaymentByWallet(YM_TOKEN, $paymentre->getRequestId()); //Ну и наконец то оплачиваем перевод со счета в Яндексе
if($paymentpr->getStatus() != 'success'){
$pay_message = 'Ошибка: ошибка системы';
}else{
$waletInfo = $ym->accountInfo(YM_TOKEN);
$pay_message = '1';
$p_reyting = $howmany*$b_payout/100; //рейтинг пользователю за вывод
if($referer > 0){
$r_reyting = $howmany*$b_payout_ref/100; //рейтинг рефереру за вывод
mysql_query("UPDATE `b_users` SET `reyting`=`reyting`+'$r_reyting' WHERE `id`='$referer'") or die(mysql_error());
}
mysql_query("UPDATE `b_users` SET `paid`=`paid`+'$howmany', `reyting`=`reyting`+'$p_reyting' WHERE `id`='$id_user'") or die(mysql_error());
mysql_query("INSERT INTO `tb_history` (`user`, `date`, `str_time`, `amount`, `method`, `status`) VALUES ('$username','".date("d-m-Y")."','".time()."','$howmany','YandexMoney','Выплата сделана')") or die(mysql_error());
mysql_query("UPDATE `tb_payme` SET `status`='1' WHERE `user_id`='$id_user' AND `status`='0' AND `payment`='3'") or die(mysql_error());
mysql_query("INSERT INTO `tb_allhistory` (`idus`,`data`,`doing`,`title`) values ('$id_user','".time()."','5','Выплата YandexMoney на сумму $howmany руб.')") or die(mysql_error()); 
}
}
}
}
echo $pay_message;exit();
}elseif($merch == 4){
require_once($_SERVER['DOCUMENT_ROOT']."/merchant/liqpay/lp_xml_inc.php");
$description = "Payment of ".$url.": order $tranid, user $username";
$r = LP_XML_SEND_MONEY ($purse,$moneycomis,LP_CURR,$description);
$kod_result = $r["status"];

if($kod_result=="success") {
$p_reyting = $howmany*$b_payout/100; //рейтинг пользователю за вывод
if($referer > 0){
$r_reyting = $howmany*$b_payout_ref/100; //рейтинг рефереру за вывод
mysql_query("UPDATE `b_users` SET `reyting`=`reyting`+'$r_reyting' WHERE `id`='$referer'") or die(mysql_error());
}
mysql_query("UPDATE `b_users` SET `paid`=`paid`+'$howmany', `reyting`=`reyting`+'$p_reyting' WHERE `id`='$id_user'") or die(mysql_error());
mysql_query("INSERT INTO `tb_history` (`user`, `date`, `str_time`, `amount`, `method`, `status`) VALUES ('$username','".date("d-m-Y")."','".time()."','$howmany','LiqPay','Выплата сделана')") or die(mysql_error());
mysql_query("UPDATE `tb_payme` SET `status`='1' WHERE `user_id`='$id_user' AND `status`='0' AND `payment`='4'") or die(mysql_error());
mysql_query("INSERT INTO `tb_allhistory` (`idus`,`data`,`doing`,`title`) values ('$id_user','".time()."','5','Выплата LiqPay на сумму $howmany руб.')") or die(mysql_error()); 
echo "1";exit();
}else{
echo $infstart.'Ошибка выплаты. Попробуйте повторить запрос позже!'.$infend;exit();
}
}elseif($merch == 5){
@require_once($_SERVER['DOCUMENT_ROOT']."/curs/curs.php");
$howmany = p_floor(($moneycomis/$CURS_USD), 2);
require("".$_SERVER['DOCUMENT_ROOT']."/merchant/perfectmoney/pm_config.php");
$OPEN_URL = fopen('https://perfectmoney.com/acct/confirm.asp?AccountID='.PM_MEMBER_ID.'&PassPhrase='.PM_PASSWORD.'&Payer_Account='.PM_MEMBER_USD.'&Payee_Account='.$purse.'&Amount='.$howmany.'&PAY_IN=1&PAYMENT_ID='.$tranid.'', 'rb');
if($OPEN_URL===false) {
echo $infstart.'Ошибка выплаты. Попробуйте повторить запрос позже!'.$infend;exit();
}else{
$OUT = "";
WHILE(!feof($OPEN_URL)) $OUT.= fgets($OPEN_URL);
fclose($OPEN_URL);
$C_R = preg_match_all("/<input name='(.*)' type='hidden' value='(.*)'>/", $OUT, $RESULT, PREG_SET_ORDER);
if(!isset($C_R)) {
echo $infstart.'Ошибка выплаты. Попробуйте повторить запрос позже!'.$infend;exit();
}else{
$ARR = "";
foreach($RESULT as $ITEM) {
$KEY = $ITEM[1];
$ARR[$KEY] = $ITEM[2];
}
if($KEY != "ERROR") {
$p_reyting = $howmany*$b_payout/100; //рейтинг пользователю за вывод
if($referer > 0){
$r_reyting = $howmany*$b_payout_ref/100; //рейтинг рефереру за вывод
mysql_query("UPDATE `b_users` SET `reyting`=`reyting`+'$r_reyting' WHERE `id`='$referer'") or die(mysql_error());
}
mysql_query("UPDATE `b_users` SET `paid`=`paid`+'$howmany', `reyting`=`reyting`+'$p_reyting' WHERE `id`='$id_user'") or die(mysql_error());
mysql_query("INSERT INTO `tb_history` (`user`, `date`, `str_time`, `amount`, `method`, `status`) VALUES ('$username','".date("d-m-Y")."','".time()."','$howmany','PerfectMoney','Выплата сделана')") or die(mysql_error());
mysql_query("UPDATE `tb_payme` SET `status`='1' WHERE `user_id`='$id_user' AND `status`='0' AND `payment`='5'") or die(mysql_error());
mysql_query("INSERT INTO `tb_allhistory` (`idus`,`data`,`doing`,`title`) values ('$id_user','".time()."','5','Выплата PerfectMoney на сумму $howmany руб.')") or die(mysql_error()); 
echo "1";exit();
}else{
echo $infstart.'Ошибка выплаты. Попробуйте повторить запрос позже!'.$infend;exit();
}
}
}
}elseif($merch == 6){
require_once($_SERVER['DOCUMENT_ROOT']."/merchant/payeer/cpayeer.php");
$payeer = new CPayeer(PY_ACC_NUMBER, PY_API_ID, PY_API_KEY);
$aut_test = $payeer->isAuth();
if(isset($aut_test) && $aut_test=="1") {
$arTransfer = $payeer->transfer(array('curIn' => 'RUB','sum' => ''.floatval($moneycomis).'','curOut' => 'RUB','to' => ''.$purse.'','comment' => 'Payment to account '.$username.'','anonim' => 'N'));
$result = isset($arTransfer["historyId"]) ? $arTransfer["historyId"] : false;

if (isset($result) && intval($result)>0) {
$p_reyting = $howmany*$b_payout/100; //рейтинг пользователю за вывод
if($referer > 0){
$r_reyting = $howmany*$b_payout_ref/100; //рейтинг рефереру за вывод
mysql_query("UPDATE `b_users` SET `reyting`=`reyting`+'$r_reyting' WHERE `id`='$referer'") or die(mysql_error());
}
mysql_query("UPDATE `b_users` SET `paid`=`paid`+'$howmany', `reyting`=`reyting`+'$p_reyting' WHERE `id`='$id_user'") or die(mysql_error());
mysql_query("INSERT INTO `tb_history` (`user`, `date`, `str_time`, `amount`, `method`, `status`) VALUES ('$username','".date("d-m-Y")."','".time()."','$howmany','Payeer','Выплата сделана')") or die(mysql_error());
mysql_query("UPDATE `tb_payme` SET `status`='1' WHERE `user_id`='$id_user' AND `status`='0' AND `payment`='6'") or die(mysql_error());
mysql_query("INSERT INTO `tb_allhistory` (`idus`,`data`,`doing`,`title`) values ('$id_user','".time()."','5','Выплата Payeer на сумму $howmany руб.')") or die(mysql_error()); 
echo "1";exit();
}else{
echo $infstart.'Ошибка выплаты. Попробуйте повторить запрос позже!'.$infend;exit();
}
}else{
echo $infstart.'Ошибка выплаты. Попробуйте повторить запрос позже!'.$infend;exit();
}
}
?>