Вход Регистрация
Файл: 3020.ru/file_3020/_system/_function/other.func.php
Строк: 137
<?

function validate_phone_number($string) {
    if ( 
preg_match'/^[+]?([d]{0,3})?[(.-s]?([d]{3})[).-s]*([d]{3})[.-s]?([d]{4})$/'$string ) ) {
        return 
true;
    } else {
        return 
false;
    }
}

function 
is_valid_credit_card($s) {
    
// оставить только цифры
    
$s strrev(preg_replace('/[^d]/','',$s));
 
    
// вычисление контрольной суммы
    
$sum 0;
    for (
$i 0$j strlen($s); $i $j$i++) {
        
// использовать четные цифры как есть
        
if (($i 2) == 0) {
            
$val $s[$i];
        } else {
            
// удвоить нечетные цифры и вычесть 9, если они больше 9
            
$val $s[$i] * 2;
            if (
$val 9)  $val -= 9;
        }
        
$sum += $val;
    }
 
    
// число корректно, если сумма равна 10
    
return (($sum 10) == 0);
}

function 
FreeKassaCashout($data) {
    
$wallet_id 'Номер кошелька';
    
$apikey 'API ключ';
    
$DataOUT = array(
        
'wallet_id'=>     $wallet_id,
        
'purse'=>         $data['purse'],
        
'amount'=>        $data['amount'],
        
'desc'=>         $data['desc'],
        
'currency'=>     $data['currency'],
        
'sign'=> md5($wallet_id $data['currency'] . $data['amount'] . $data['purse'] . $apikey),
        
'action'=>'cashout',
    );
    
$ch curl_init();
    
curl_setopt($chCURLOPT_URL'https://www.fkwallet.ru/api_v1.php');
    
curl_setopt($chCURLOPT_HEADER0);
    
curl_setopt($chCURLOPT_SSL_VERIFYPEER0);
    
curl_setopt($chCURLOPT_SSL_VERIFYHOST0);
    
curl_setopt($chCURLOPT_RETURNTRANSFER1);
    
curl_setopt($chCURLOPT_POST1);
    
curl_setopt($chCURLOPT_TIMEOUT10);
    
curl_setopt($chCURLOPT_CONNECTTIMEOUT10);
    
curl_setopt($chCURLOPT_POSTFIELDS$DataOUT);
    
$result trim(curl_exec($ch));
    
$c_errors curl_error($ch);
    
curl_close($ch);
    return 
$result;
}


class 
FreeKassaHade
{
    const 
VERSION  '1.1';
    const 
API_URL  'https://www.fkwallet.ru/api_v1.php';
    const 
INI_FILE '/_system/_inifiles/freekassa.ini';
    
    public function 
__construct() {
        
$this->FileConfig $_SERVER['DOCUMENT_ROOT'] . self::INI_FILE;
        if (
is_file($this->FileConfig)) {
            
$this->config parse_ini_file($this->FileConfig);
        } else {
            die(
'Freekassa: error - not ini file');
        }
    }
    public function 
data($data)
    {
        
$ch curl_init();
        
curl_setopt($chCURLOPT_URLself::API_URL);
        
curl_setopt($chCURLOPT_HEADER0);
        
curl_setopt($chCURLOPT_SSL_VERIFYPEER0);
        
curl_setopt($chCURLOPT_SSL_VERIFYHOST0);
        
curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
curl_setopt($chCURLOPT_POST1);
        
curl_setopt($chCURLOPT_TIMEOUT10);
        
curl_setopt($chCURLOPT_CONNECTTIMEOUT10);
        
curl_setopt($chCURLOPT_POSTFIELDS$data);
        
$result trim(curl_exec($ch));
        
$c_errors curl_error($ch);
        
$cc curl_close($ch);
        
$result json_decode($resultTRUE);
        return 
$result;
    }
    public function 
status($id)
    {
        
$data = array(
            
'wallet_id'  => $this->config['wallet'],
            
'payment_id' => $id,
            
'sign'          => md5($this->config['wallet'] . $id $this->config['apikey']),
            
'action'      => 'get_payment_status',
        );
        return 
$this->data($data);
    }
    public function 
balans()
    {
        
$data = array(
            
'wallet_id'  => $this->config['wallet'],
            
'sign'          => md5($this->config['wallet'] . $this->config['apikey']),
            
'action'      => 'get_balance',
        );
        return 
$this->data($data);
    }
    public function 
cashout($data)
    {
        if (empty(
$data)) {
            return 
'error options';
        }
        
$DataOUT = array(
            
'wallet_id' => $this->config['wallet'],
            
'purse'        => $data['purse'],
            
'amount'    => $data['amount'],
            
'desc'        => $data['desc'],
            
'currency'    => $data['currency'],
            
'sign'        => md5($this->config['wallet'] . $data['currency'] . $data['amount'] . $data['purse'] . $this->config['apikey']),
            
'action'    => 'cashout',
        );
        return 
$this->data($DataOUT);
    }
    public function 
tariff()
    {
        
/*
        id : минимальная сумма :: коммиссия :: доп. сумма(фиксированная):: максимальная сумма :: название
        */
        
$ConfigPayment = array(
            
            
'QIWI'             => '63::100::4::1::15000::QIWI кошелёк (RUB)',
            
'QIWIUAH'         => '63::100::5::1::15000::QIWI кошелёк (UAH)',    
            
//'QIWIKZT'         => '162::100::6::5::15000::QIWI кошелёк (KZT)',    
            
            //'WebMoneyWMR'     => '1::10::4::0::15000::WebMoney WMR',
            
            
'YandexMoney'     => '45::10::0::0::15000::Яндекс.Деньги',
            
'CardRU'         => '94::300::5::71::40000::Банковские карты VISA/MASTERCARD (RUB)',
            
'Tele2'         => '132::10::1::5::15000::Баланс телефона Tele2',
            
'Mts'             => '84::10::1::5::15000::Баланс телефона Mts',
            
'Beeline'         => '83::10::1::5::15000::Баланс телефона Beeline',
            
'Megafon'         => '82::10::1::5::15000::Баланс телефона Megafon',
            
//'PayeerRUB'     => '114::10::5::0::15000::Payeer RUB',
            //'PayPal'     => '70::10::5::5::15000::PayPal',
            
        
);
        return 
$ConfigPayment;
    }

    
/*
    return
    array(3) {
      ["answer"]=>
      string(4) "info"
      ["desc"]=>
      string(33) "Заявка отправлена"
      ["PaymentId"]=>
      string(7) "4464508"
    }
    */
    
function getTransfer($amount 100
    {
        
$merchant_id $this->config['merchant_id'];
        
$s md5($merchant_id $this->config['secret_word']);
        
$API_URL "http://www.free-kassa.ru/api.php?currency=fkw&merchant_id={$merchant_id}&s={$s}&action=payment&amount="$amount;
        
        
$html_code file_get_contents($API_URL);
        
$xml simplexml_load_string($html_code);
        
$json json_encode($xml);
        
$array json_decode($json,TRUE);
        return 
$array;
        
/*
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $API_URL);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        $result = trim(curl_exec($ch));
        $c_errors = curl_error($ch);
        $cc = curl_close($ch);
        //xml to json
        $xml = simplexml_load_string($result);
        $json = json_encode($xml);
        $array = json_decode($json,TRUE);
        return $array;    */
        
        
    
}
}
Онлайн: 1
Реклама