Файл: 3020.ru/file_3020/plugins/output.cash.php
Строк: 266
<?
$system['title'] = 'Вывод средств';
require SYS . 'header.php';
if ($user['id'] != 13 AND $user['id'] != 2771) {//AND $user['id'] != 2771
//die('Идёт тестирование');
}
//error_reporting(E_ALL);
//ini_set('display_errors',true);
if (isset($_GET['err'])) {
?><div class="alert alert-error text-center">Неверный пароль</div><?
}
//unset($_SESSION['passwordCash']);
if (empty($_SESSION['passwordCash'])) {
if (isset($_POST['pass'])) {
$pass = $sql->esc($_POST['pass']);
if ($sql->selectCount("SELECT COUNT(*) FROM `users` WHERE `id` = '" . $user['id'] . "' AND `password` = '" . md5($pass) . "'") == 0) {
$err[] = 'Неверный пароль';
die(header('Location: /?func=output.cash&err'));
}
if (!isset($err)) {
$_SESSION['passwordCash'] = md5(time());
die(header('Location: /?func=output.cash'));
}
}
?>
<div class="nav2 text-center">
Что бы продолжить ,нужно ввести пароль от вашей страницы <br/><br/>
<form class="text-center" method="post" action="/?func=output.cash" name="passform">
<input type="hidden" name="token" value="<?=md5(mt_rand(1,99999) . time() . mt_rand(1,99999))?>">
<input type="text" name="pass" maxlength="32" placeholder="Пароль от страницы" value=""><br />
<button>Продолжить</button>
</form>
</div>
<?
} else {
$fkp = new FreeKassaHade();
/*
$out = $fkp->balans();
echo '<pre>';
var_dump($out);
echo '</pre>';
*/
/*
$DataCashout = array(
'purse' => 0,
'amount' => 0,
'currency' => 222,
'desc' => 'Output from 4i4i.ru',
);
$out = $fkp->cashout($DataCashout);
echo '<pre>';
var_dump($out);
echo '</pre>';
*/
$ConfigPayment = $fkp->tariff();
?>
<style>
.payblock:hover{
border: 1px solid #bcc1ce;
opacity: 0.5;
}
.payblock{
background-color: #fff;
width: 151px;
height: 80px;
//max-height: 80px;
//max-width: 171px;
border: 1px solid #eff1f7;
border-radius: 3px;
display: inline-flex;
align-items: center;
justify-content: center;
margin-right: 5px;
margin-bottom: 5px;
/*cursor: pointer;*/
position: relative;
transition: all .3s ease-in-out 0s;
}
</style>
<?
if (isset($_GET['okcash'])) {
$okcash = explode('::', $_GET['okcash']);
?>
<div class="nav1">
<center>
<h1 class="text-center" style="font-size:18px;">
Вывод на расчётный счёт <span style="color:#62c462;"><?=text($okcash[2])?></span>, в размере
<span style="color:#ff9900;"><?=abs($okcash[0])?>₽</span>, успешно завершён.
</h1>
</center>
</div>
<?
}
if (empty($_GET['type'])) {
?>
<div class="nav1">
<center>
<h1 class="text-center" style="font-size:18px;">
Доступно на вывод <?=round($user['wmr'], 2)?> ₽ <br/>
</h1>
</center>
</div>
<?
?>
<center style="background-color: #ffffff;"><br/>
<?
$i = 0;
foreach($ConfigPayment AS $name=> $key){
$p = explode('::', $key);
if ($i == 3 || $i == 6 || $i == 9 || $i == 12) {
?><br/><?
}
?> <a href="?func=output.cash&type=<?=$name?>">
<span class="payblock">
<img class="" src="/themes/_payment/<?=$name?>.png" alt="<?=$p[4]?>">
</span>
</a>
<?
$i++;
}
?></br><br/></center><?
/*
$k_post = $sql -> selectCount("SELECT COUNT(*) FROM `hist_freekassa_check` ");
if ($k_post > 0) {
?><div class="nav2">5 последних выплат</div><?
$array = $sql -> select("SELECT * FROM `hist_freekassa_check` ORDER BY `date_create` DESC LIMIT 5");
foreach ($array AS $p) {
$cpdDATA = $fkp->tariff();
$cpd = explode('::', $cpdDATA[$p['type']]);
?>
<div class="nav1">
Расчётный счёт: <b><?=$p['wallet']?></b><br/>
Сумма: <b><?=$p['num']?></b><br/>
Способо вывода: <b><?=$cpd[5]?></b><br/>
Платёжный индификатор: <b><?=$p['payment_id']?></b><br/>
</div>
<?
}
}*/
}
if (isset($_GET['type'])) {
$type = $_GET['type'];
$type = text($type);
$ConfigPayment = $fkp->tariff();
if (empty($ConfigPayment[$type])){
die(header('Location: ?func=output.cash'));
}
$cp = explode('::', $ConfigPayment[$type]);
$idpay = $cp[0];
$outwmr = round($user['wmr'], 2);
/*
//$outwmr = (($outwmr * $cp[2]) / 100);
//$outwmr = ($outwmr - $outwmr);
*/
$com = (($outwmr * $cp[2]) / 100);
$outwmr = ($outwmr - $com);
$outwmr = ($outwmr - $cp[3]);
//$outwmr = number_format($outwmr ,1, '.', '');
$outwmr = round($outwmr, 2);
if ($outwmr <= 0) {
$outwmr = 0;
}
if (isset($_POST['num'], $_POST['wallet']) ) {//AND $_POST['wallet'] != null
$wallet = trim($_POST['wallet']);
$payment = $type;
$num = trim($_POST['num']);
$num = abs((int)$num);
$_SESSION['num'] = $num;
$_SESSION['wallet'.$type] = $wallet;
$wallet = str_replace(" ", false, $wallet);
$linecount = mb_strlen($wallet, 'utf-8');
if ($payment == 'CardRU' || $payment == 'CardUAH') {
if (!is_valid_credit_card($wallet)) {
$err[] = 'Ошибка в номере банковской карты';
}
}
$wallet = str_replace("+", false, $wallet);
if ($payment == 'QIWI' || $payment == 'Megafon' || $payment == 'Mts' || $payment == 'Tele2' || $payment == 'Beeline') {
$nn = substr($wallet, 0, 2);
if (!validate_phone_number($wallet) || $nn != '79' || $linecount != 11) {
$err[] = 'Ошибка в номере телефона';
}
}
if ($payment == 'QIWIUAH') {
$nn = substr($wallet, 0, 2);
if (!validate_phone_number($wallet) || $nn != '38' || $linecount != 12) {
$err[] = 'Ошибка в номере телефона';
}
}
if ($payment == 'QIWIKZT') {
$nn = substr($wallet, 0, 2);
if (!validate_phone_number($wallet) ||
$linecount != 10 AND
$nn != '776' AND
$nn != '771' AND
$nn != '701' AND
$nn != '702' AND
$nn != '705' AND
$nn != '777' AND
$nn != '712' AND
$nn != '713' AND
$nn != '717' AND
$nn != '718' AND
$nn != '721' AND
$nn != '725' AND
$nn != '726' AND
$nn != '727' AND
$nn != '700'
) {
$err[] = 'Ошибка в номере телефона';
}
}
if ($payment == 'PayPal') {
if (!filter_var($wallet, FILTER_VALIDATE_EMAIL)) {
$err[] = 'Email указан неверно';
}
$wallet = strtoupper($wallet);
}
if ($payment == 'WebMoneyWMZ') {
if (!preg_match("/^zd{12}$/i", $wallet)) {
$err[] = 'Ошибка в номере WebMoney WMZ';
}
$wallet = strtoupper($wallet);
}
if ($payment == 'WebMoneyWMR') {
if (!preg_match("/^rd{12}$/i", $wallet)) {
$err[] = 'Ошибка в номере WebMoney WMR';
}
$wallet = strtoupper($wallet);
}
if ($payment == 'PayeerRUB') {
if (!preg_match("/^pd{7}$/i", $wallet) || $linecount != 9) {
$err[] = 'Ошибка в номере PAYEER';
}
$wallet = strtoupper($wallet);
}
$num = abs((int)$num);
if ($num < $cp[1]) {
$err[] = 'Минимум '. $cp[1] .'₽';
}
if ($outwmr < $num) {
$err[] = 'У вас нету столько средств';
}
if ($wallet == '410011895706064') {
//die('Произошла ошибка');
}
if (!isset($err) AND $user['wmr'] >= 10) {
$p['wallet'] = $wallet;
$p['type'] = $payment;
$p['num'] = $num;
$DataCashout = array(
'purse' => $p['wallet'],
'amount' => $p['num'],
'currency' => $idpay,
'desc' => 'Output from 4i4i.ru '. $user['login'],
);
$datar = $fkp->cashout($DataCashout);
//я знаю как это лечить . ты меня считаешь за чела который не разбирается ов всем этом . я следовал документации
/*
echo '<pre>';
print_r();
echo '</pre>';
*/
if ($datar['status'] == 'error') {
$err[] = 'Ошибка, попробуйте повторить позже .';
}
if (@$datar['data']['payment_id'] < 1) {
$err[] = 'Системная ошибка, платёжной системы';
}
}
//Возможно при покупке товара коссия уже спиысывается
//$user['wmr'] = round($user['wmr'] - ($user['wmr'] / 100 * $system['pct_pays']), 2);
if (!isset($err)) {
/*$uwmr = $num;
$com2 = (($uwmr * $cp[2]) / 100);
$uwmr = ($uwmr - $com2);
$uwmr = ($uwmr - $cp[3]);
$rub = round($uwmr, 2);
*/
$com3 = (($num * $cp[2]) / 100);
$com3 = ($com3 + $cp[3]);
$comp = round($com3, 2);
$rub = $num + $com3;
$rub = ceil($rub);
$rub = round($rub, 2);
//ceil
//var_dump($datar);
$sql->insert("INSERT INTO `hist_freekassa_check` (`hash`,`num`, `date_create`, `id_user`,`type`,`wallet`,`idpay`,`payment_id`) VALUES ('".md5(time().mt_rand(1,999999))."','{$rub}', '{$time}', '{$user['id']}', '{$p['type']}', '{$p['wallet']}','{$idpay}','{$datar['data']['payment_id']}')");
//die('ddd');
//$sql->query("UPDATE `hist_payment` SET `status` = '1' WHERE `id` = {$p['id']};");
$sql->insert("INSERT INTO `log_wmout` (`wmr`, `time`, `id_user`) VALUES ('$rub', '$time', '$user[id]')");
$idcash = $sql->insert_id();
journal($system['admin_id'], 'other', login($user['id'], 0) . " вывел средства в размере [b]$num ₽[/b], комиссия {$comp}₽");
$msglog = "Вывод средств на расчетный кошелек: {$p['wallet']} в размере [b]$num ₽ , комиссия {$comp}₽[/b]";
$sql->insert("INSERT INTO `billing_log` (`time`, `type`, `id_user`, `coins`, `msg`) VALUES ('$time', 'vivod', '$user[id]', '-" . $rub . "', '$msglog')");
$sql->update("UPDATE `log_wmout` SET `end` = '1' WHERE `id` = '$idcash'");
$sql->update("UPDATE `users` SET `wmr` = `wmr` - '$rub' WHERE `id` = '$user[id]'");
unset($_SESSION['wallet'.$type], $_SESSION['payment'], $_SESSION['num']);
die(header('Location: /?func=output.cash&okcash='. $rub .'::'. $p['type'] .'::'. $p['wallet']));
}
}
if (isset($err)) {
err($err);
}
$payment = (isset($_SESSION['payment']) ? $_SESSION['payment'] : false);
$num = (isset($_SESSION['num']) ? $_SESSION['num'] : false);
$wallet = (isset($_SESSION['wallet'.$type]) ? $_SESSION['wallet'.$type] : false);
if ($type == 'WebMoneyWMZ' || $type == 'WebMoneyWMR' || $type == 'PayeerRUB') {
$wallet = strtoupper($wallet);
}
if ($level == 0){
die(__('Только для зарегистрированных пользователей'));
}
?>
<div class="nav1">
« <a href="?func=output.cash">Выбрать другую систему</a>
</div>
<div class="nav1">
<center>
<img src="/themes/_payment/<?=$type?>.png" alt="<?=$p[4]?>"><br/><br/>
Минимальная сумма вывода: <?=$cp[1]?>₽ <br/>
Коммисия: <?=$cp[2]?>% <br/>
Фиксированная сумма: <?=$cp[3]?>₽<br/>
<h1 class="text-center" style="font-size:18px;">
Доступно на вывод с учётом всех комиссий <?=$outwmr?> ₽ <br/>
</h1>
</center>
</div>
<?
$srorename = 'Номер счёта';
if ($type == 'QIWI' || $type == 'Megafon' || $type == 'Mts' || $type == 'Tele2' || $type == 'Beeline' || $type == 'QIWIUAH' || $type == 'QIWIKZT') {
$srorename = 'Номер телефона';
}
if ($type == 'CardRU' || $type == 'CardUAH') {
$srorename = 'Номер банковской карты';
}
if ($type == 'PayPal') {
$srorename = 'Email адрес';
}
?>
<div class="nav2">
<form class="text-center" method="post" action="" name="pay">
<input type="text" name="num" maxlength="32" placeholder="Нужная сумма" value="<?=$num?>" autocomplete="off" ><br />
<input type="text" name="wallet" maxlength="32" placeholder="<?=$srorename?>" value="<?=$wallet?>" autocomplete="off"><br /><br />
<button>Вывод средств</button>
</form>
<center>
<?
if ($type == 'QIWI' || $type == 'Megafon' || $type == 'Mts' || $type == 'Tele2' || $type == 'Beeline') {
?>
Пример: <b>792954295xx</b> (<b style="color:#ff0000">без</b> 89 и <b style="color:#ff0000">без</b> +7) <br/>
<?
}
if ($type == 'CardRU' || $type == 'CardUAH') {
?>
Пример: <b>12345 6789 1234 5678</b> (Можно с пробелами, можно без них)<br/>
<?
}
if ($type == 'WebMoneyWMR') {
?>
Пример: <b>R034873236762</b> <br/>
<?
}
if ($type == 'WebMoneyWMZ') {
?>
Пример: <b>Z238479008342</b> <br/>
<?
}
if ($type == 'QIWIUAH') {
?>
Пример: <b>3805027286xx</b> * Зачисление будет на рублёвый кошелёк<br/>
<?
}
if ($type == 'PayPal') {
?>
Пример: <b>user@site.ru</b><br/>
<?
}
if ($type == 'QIWIKZT') {
?>
Поддерживаем коды:<br/>
<b>776</b>,
<b>771</b>,
<b>701</b>,
<b>702</b>,
<b>705</b>,
<b>777</b>,
<b>712</b>,
<b>713</b>,
<b>717</b>,
<b>718</b>,
<b>721</b>,
<b>725</b>,
<b>726</b>,
<b>727</b>,
<b>700</b>
<?
}
?></center>
</div>
<?
}
}
?>
<div class="foot">
« <a href="?func=user.cash">назад</a>
</div>
<?