1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
result.php
См. документацию.
1<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();?><?
2include(GetLangFileName(dirname(__FILE__)."/", "/assist.php"));
3
8
9$ORDER_ID = intval($GLOBALS["SALE_INPUT_PARAMS"]["ORDER"]["ID"]);
10
11set_time_limit(0);
12
13$sHost = "payments.paysecure.ru";
14$sUrl = "/orderstate/orderstate.cfm";
15$dtm = AddToTimeStamp(Array("MM" => -1), false);
16$sVars = "Ordernumber=".$ORDER_ID."&Merchant_ID=".$assist_Shop_IDP."&login=".$assist_LOGIN."&password=".$assist_PASSWORD."&FORMAT=3&StartYear=".date('Y', $dtm)."&StartMonth=".date('n', $dtm)."&StartYDay=".date('j', $dtm)."";
17
19 "In Process" => array(GetMessage("SASP_IP"), GetMessage("SASPD_IP")),
20 "Delayed" => array(GetMessage("SASP_D"), GetMessage("SASPD_D")),
21 "Approved" => array(GetMessage("SASP_A"), GetMessage("SASPD_A")),
22 "PartialApproved" => array(GetMessage("SASP_PA"), GetMessage("SASPD_PA")),
23 "PartialDelayed" => array(GetMessage("SASP_PD"), GetMessage("SASPD_PD")),
24 "Canceled" => array(GetMessage("SASP_C"), GetMessage("SASPD_C")),
25 "PartialCanceled" => array(GetMessage("SASP_PC"), GetMessage("SASPD_PC")),
26 "Declined" => array(GetMessage("SASP_DEC"), GetMessage("SASPD_DEC")),
27 "Timeout" => array(GetMessage("SASP_T"), GetMessage("SASPD_T")),
28);
29
30$sResult = QueryGetData($sHost, 80, $sUrl, $sVars, $errno, $errstr, "POST");
31if ($sResult <> "")
32{
33 require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/xml.php");
34 $objXML = new CDataXML();
35 $objXML->LoadString($sResult);
36 $arResult = $objXML->GetArray();
37 if (count($arResult)>0 && $arResult["result"]["@"]["firstcode"] == "0")
38 {
39 $aRes = $arResult["result"]["#"]["order"][0]["#"];
40 if (intval($aRes["ordernumber"][0]["#"]) == $ORDER_ID)
41 {
42 $arFields = Array();
43 $check = ToUpper(md5(toUpper(md5($password).md5($assist_Shop_IDP.$aRes["ordernumber"][0]["#"].$aRes["orderamount"][0]["#"].$aRes["ordercurrency"][0]["#"].$aRes["orderstate"][0]["#"]))));
44 if($aRes["checkvalue"][0]["#"] == $check)
45 {
46 $arOrder = CSaleOrder::GetByID($ORDER_ID);
48 "PS_STATUS" => ($aRes["orderstate"][0]["#"] == "Approved"?"Y":"N"),
49 "PS_STATUS_CODE" => mb_substr($aRes["orderstate"][0]["#"], 0, 5),
50 "PS_STATUS_DESCRIPTION" => $aDesc[$aRes["orderstate"][0]["#"]][0],
51 "PS_STATUS_MESSAGE" => $aDesc[$aRes["orderstate"][0]["#"]][1],
52 "PS_SUM" => DoubleVal($aRes["orderamount"][0]["#"]),
53 "PS_CURRENCY" => $aRes["ordercurrency"][0]["#"],
54 "PS_RESPONSE_DATE" => Date(CDatabase::DateFormatToPHP(CLang::GetDateFormat("FULL", LANG))),
55 );
56
57 if ($arOrder["PAYED"] != "Y" && CSalePaySystemAction::GetParamValue("AUTOPAY") == "Y" && $arFields["PS_STATUS"] == "Y" && Doubleval($arOrder["PRICE"]) == DoubleVal($arFields["PS_SUM"]))
58 {
59 CSaleOrder::PayOrder($arOrder["ID"], "Y");
60 }
61 }
62 if(!empty($arFields))
64
65 return true;
66 }
67 }
68}
69
70return false;
71?>
$arResult
Определения generate_coupon.php:16
static GetParamValue($key, $defaultValue=null)
Определения pay_system_action.php:76
Определения xml.php:396
static Update($ID, $arFields, $bDateUpdate=true)
Определения order.php:140
$arFields
Определения dblapprove.php:5
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
ToUpper($str)
Определения tools.php:2247
QueryGetData($SITE, $PORT, $PATH, $QUERY_STR, &$errno, &$errstr, $sMethod="GET", $sProto="", $sContentType='N')
Определения tools.php:4287
GetMessage($name, $aReplace=null)
Определения tools.php:3397
AddToTimeStamp($arrAdd, $stmp=false)
Определения tools.php:687
GetLangFileName($before, $after, $lang=false)
Определения tools.php:3428
die
Определения quickway.php:367
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения waybill.php:936
$ORDER_ID
Определения html.php:2
$assist_Shop_IDP
Определения result.php:4
$sHost
Определения result.php:13
$assist_LOGIN
Определения result.php:5
$password
Определения result.php:7
$dtm
Определения result.php:15
$sVars
Определения result.php:16
$aDesc
Определения result.php:18
$sUrl
Определения result.php:14
$assist_PASSWORD
Определения result.php:6
$sResult
Определения result.php:30
$GLOBALS['_____370096793']
Определения update_client.php:1