Просмотр файла wu-engine/wu-pay-systems/wu_res_yandex.php

Размер файла: 2.9Kb
<?php
require_once('../wu_init.php');

//Приём данных
$id = mysqli_real_escape_string($connect_db, trim($_POST['label']));    
$order = mysqli_real_escape_string($connect_db, trim($_POST['operation_id']));       
$payer = mysqli_real_escape_string($connect_db, trim($_POST['sender']));      
$odate = mysqli_real_escape_string($connect_db, trim($_POST['datetime']));   
$code = mysqli_real_escape_string($connect_db, trim($_POST['codepro']));       
$amount = mysqli_real_escape_string($connect_db, trim($_POST['amount']));    
$wamount = mysqli_real_escape_string($connect_db, trim($_POST['withdraw_amount']));   
$cur = mysqli_real_escape_string($connect_db, trim($_POST['currency']));   
$type = mysqli_real_escape_string($connect_db, trim($_POST['notification_type']));  
$hash = mysqli_real_escape_string($connect_db, trim($_POST['sha1_hash']));

$batch = $id;

//Проверка данных
$order = mysqli_fetch_assoc(mysqli_query($connect_db, "SELECT id,usr,ps,type,extra,s,st FROM `".DB_PREFIX."_cash_in` WHERE batch='$batch' LIMIT 1"));
if (empty($order['id'])) { wu_log_act(2, "Пытался провести платёж через Яндекс без созданного счёта. Номер не найденой транзакции: ".wu_filter($_POST['m_orderid']).", ip: $ip"); exit; }
if ($order['st'] == 1) { wu_log_act(2, "Пытался оплатить уже оплаченный счёт через Яндекс. Номер транзакции в системе: $batch, ip: $ip"); exit; }
if ($order['s'] != $wamount) { wu_log_act(2, "Пытался оплатить счёт через Яндекс с подменой суммы. Номер транзакции в системе: $batch, ip: $ip"); exit; }

$paysys = mysqli_fetch_assoc(mysqli_query($connect_db, "SELECT id,ident,ti,keys_in,active_in FROM `".DB_PREFIX."_pay_systems` WHERE id='$order[ps]' LIMIT 1"));
if ($paysys['active_in'] == 0) { wu_log_act(2, "Пытался провести платёж через отключенную для пополнения платёжную систему Яндекс. Номер транзакции в системе: $batch, ip: $ip"); exit; }

//Проверка хэша

$keys_in = explode('||', $paysys['keys_in']);
$key = $keys_in[1];
$hash_gen = hash("sha1", $type.'&'.$order.'&'.$amount.'&'.$cur.'&'.$odate.'&'.$payer.'&'.$code.'&'.$key.'&'.$id);
if($hash_gen != $hash) { wu_log_act(2, "Пытался провести платёж с поддельным хэшем через платёжную систему Яндекс. Номер транзакции в системе: $batch, ip: $ip"); exit; }

$usr = $order['usr'];
$extra = $order['extra'];
$sum = $order['s'];
$paysys_ti = $paysys['ti'];

//Инклуд операции
require_once('wu_res_operation_'.$order['type'].'.php');

mysqli_query($connect_db, "UPDATE `".DB_PREFIX."_cash_in` SET `st` = '1' WHERE batch='$batch' LIMIT 1");

exit('OK');
?>