Вход Регистрация
Файл: _rootinc/assist.inc.php
Строк: 125
<?

class ASSIST
{
    public 
$url null;
    public 
$shopid null;
    public 
$user null;
    public 
$password null;
    public 
$error null;

    public function 
init($url,$shopid,$user,$password)
    {
        
$this->url=$url;
        
$this->shopid=$shopid;
        
$this->user=$user;
        
$this->password=$password;
    }

    public function 
send($request)
    {
        
$request iconv("utf-8""windows-1251"$request);

        
$fp curl_init(); 
        
curl_setopt($fpCURLOPT_URL$this->url);
        
curl_setopt($fpCURL_HTTP_VERSION_1_11);
        
curl_setopt($fpCURLOPT_POST1);
        
curl_setopt($fpCURLOPT_POSTFIELDS$request);
        
curl_setopt($fpCURLOPT_SSL_VERIFYPEER0);
        
curl_setopt($fpCURLOPT_SSL_VERIFYHOST0);
        
curl_setopt($fpCURLOPT_RETURNTRANSFER,1);
        
curl_setopt($fpCURLOPT_TIMEOUT120);

        
$result curl_exec($fp);

        if (@
curl_errno($fp)) {
            
$this->error "cURL Error ".@curl_errno($fp).": ".@curl_error($fp);
            return 
false;
        }

        
curl_close($fp);  

        
$result iconv("windows-1251""utf-8"$result);

        return 
$result;
    }

    public function 
getResults()
    {
        
$results $this->send("ShopOrderNumber=%&Shop_ID=$this->shopid&Login=$this->user&Password=$this->password&Format=4");
        
$result xml2array($results);

        if (
is_array($result[assistresult]) and is_array($result[assistresult][0][orders][0][order])) {
            return 
$result[assistresult][0][orders][0][order];
        } else {
            
$results preg_replace("/<?xml[^]]*]>/ui","",$results);
            
$results "<xml>".$results."</xml>";
            
$results toarray($results,"xml",1);

            
$firstcode $results[assistresult][0][attributes][firstcode];
            
$secondcode $results[assistresult][0][attributes][secondcode];

            
$this->error "getResults: codes: $firstcode (".$this->getFirstCode($firstcode)."), $secondcode (".$this->getSecondCode($secondcode).")";
            return 
false;
        }
    }

    public function 
getFirstCode($code
    {
        
$firstcodes[0]="Успех";
        
$firstcodes[1]="Ошибка";
        
$firstcodes[2]="Внутренняя ошибка";
        
$firstcodes[3]="Отсутствие обязательного параметра";
        
$firstcodes[4]="Ошибка в формате параметра";
        
$firstcodes[5]="Неверное значение параметра";
        
$firstcodes[6]="Несоответствующая версия системы";
        
$firstcodes[7]="Ошибка аутентификации";
        
$firstcodes[8]="Ошибка авторизации";
        
$firstcodes[9]="Ошибка шифрования";
        
$firstcodes[10]="Отсутствие объекта";
        
$firstcodes[11]="Дубликатный объект";
        
$firstcodes[12]="Объект заблокирован";
        
$firstcodes[13]="Несовпадения с уже существующим в базе объектом";
        
$firstcodes[14]="Запрещенный объект";
        
$firstcodes[15]="Запрещенная операция";
        
$firstcodes[16]="Истекло время операции";
        
$firstcodes[17]="Ошибка авторизации по 3D-Secure";

        return 
$firstcodes[$code];
    }

    public function 
getSecondCode($code
    {
        
$secondcodes[0]="Дополнительной информации нет";
        
$secondcodes[1]="Непредвиденная ошибка";
        
$secondcodes[2]="Сгенерированный документ слишком большой";
        
$secondcodes[3]="Частота запроса интерфейса превышена";
        
$secondcodes[4]="Интервал выборки слишком большой";
        
$secondcodes[5]="Ошибка шифрования ключом";
        
$secondcodes[6]="Ошибка расшифровки ключом";
        
$secondcodes[100]="Параметр Shop_IDP (Shop_ID)";
        
$secondcodes[101]="Параметр LOGIN";
        
$secondcodes[102]="Параметр PASSWORD";
        
$secondcodes[103]="Параметр FORMAT";
        
$secondcodes[104]="Параметр DATE";
        
$secondcodes[105]="Параметр CURRENCY";
        
$secondcodes[106]="Параметр CARDNUMBER";
        
$secondcodes[107]="Параметр ORDER_IDP (SHOPORDERNUMBER)";
        
$secondcodes[108]="Параметр SUBTOTAL_P";
        
$secondcodes[109]="Параметр DELAY";
        
$secondcodes[110]="Параметр COMMENT";
        
$secondcodes[111]="Параметр CARDTYPE (MEANTYPE)";
        
$secondcodes[112]="Параметр EXPIREMONTH";
        
$secondcodes[113]="Параметр EXPIREYEAR";
        
$secondcodes[114]="Параметр CARDHOLDER";
        
$secondcodes[115]="Параметр CVC2";
        
$secondcodes[116]="Параметр CLIENTIP";
        
$secondcodes[117]="Параметр LASTNAME";
        
$secondcodes[118]="Параметр FIRSTNAME";
        
$secondcodes[119]="Параметр MIDDLENAME";
        
$secondcodes[120]="Параметр EMAIL";
        
$secondcodes[121]="Параметр ADDRESS";
        
$secondcodes[122]="Параметр PHONE";
        
$secondcodes[123]="Параметр CITY";
        
$secondcodes[124]="Параметр STATE";
        
$secondcodes[125]="Параметр ZIP";
        
$secondcodes[126]="Параметр DEMORESULT";
        
$secondcodes[127]="Параметр LANGUAGE (ENGLISH)";
        
$secondcodes[128]="Параметр COUNTRY";
        
$secondcodes[129]="Параметры STARTDAY и/или STARTMONTH и/или STARTYEAR";
        
$secondcodes[130]="Параметры ENDDAY и/или ENDMONTH и/или ENDYEAR";
        
$secondcodes[131]="Параметр SUCCESS";
        
$secondcodes[132]="Параметр ZIPFLAG";
        
$secondcodes[133]="Параметр HEADER";
        
$secondcodes[134]="Параметр HEADER1";
        
$secondcodes[135]="Параметр DELIMITER";
        
$secondcodes[136]="Параметр OPENDELIMITER";
        
$secondcodes[137]="Параметр CLOSEDELIMITER";
        
$secondcodes[138]="Параметр ROWDELIMITER";
        
$secondcodes[139]="Параметр FIELDS";
        
$secondcodes[140]="Параметр SSL";
        
$secondcodes[141]="Параметры LOGIN и/или PASSWORD";
        
$secondcodes[142]="Параметры EXPIREMONTH и/или EXPIREYEAR";
        
$secondcodes[143]="Параметр BILLNUMBER";
        
$secondcodes[144]="Параметр PROTECTCODE";
        
$secondcodes[145]="Параметр PAYMENTTYPE";
        
$secondcodes[146]="Параметр WMNUMBER";
        
$secondcodes[147]="Параметр RPSERIES";
        
$secondcodes[148]="Параметр RPNUMBER";
        
$secondcodes[149]="Параметр ASSISTID";
        
$secondcodes[150]="Параметр PIN";
        
$secondcodes[154]="Параметр EPAYNUMBER";
        
$secondcodes[155]="Параметр Transaction_ID";
        
$secondcodes[157]="Параметр Product_ID";
        
$secondcodes[200]="Объект Магазин";
        
$secondcodes[201]="Объект Заказ";
        
$secondcodes[202]="Объект Покупатель";
        
$secondcodes[203]="Объект Кредитная карта";
        
$secondcodes[204]="Объект Банк";
        
$secondcodes[205]="Объект Процессинг";
        
$secondcodes[206]="Объект Терминал";
        
$secondcodes[207]="Объект Страна";
        
$secondcodes[208]="Объект Курс валюты";
        
$secondcodes[209]="Объект IP-адрес";
        
$secondcodes[210]="Объект Комисcия";
        
$secondcodes[211]="Объект URL";
        
$secondcodes[212]="Объект Режим оплаты";
        
$secondcodes[213]="Объект Электронный кошелек";
        
$secondcodes[214]="Объект Метод";
        
$secondcodes[215]="Объект SOAP Packet";
        
$secondcodes[300]="Отмена авторизации (void)";
        
$secondcodes[301]="Возврат средств (refund)";
        
$secondcodes[302]="Финансовое подтверждение (deposit)";
        
$secondcodes[305]="Отмена оплаты (reversal)";

        return 
$secondcodes[$code];
    }
}
?>
Онлайн: 0
Реклама