1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
recurring.php
См. документацию.
1
<?php
8
namespace
Bitrix\Sale;
9
10
use Bitrix\Main;
11
12
Main\Localization\Loc::loadMessages
(__FILE__);
13
18
class
Recurring
19
{
26
public
static
function
repeat
(Order
$order
,
array
$resultList)
27
{
28
$recurringID = intval(
$order
->getField(
"RECURRING_ID"
));
29
30
$basket =
$order
->getBasket();
31
foreach
($resultList as $providerName => $basketList)
32
{
33
foreach
($basketList as $basketCode => $resultData)
34
{
35
if
(
$order
->isPaid())
36
{
37
if
(!empty($resultData) && is_array($resultData))
38
{
39
if
(empty($resultData[
'ORDER_ID'
]) || intval($resultData[
'ORDER_ID'
]) < 0)
40
$resultData[
"ORDER_ID"
] =
$order
->getId();
41
42
$resultData[
"REMAINING_ATTEMPTS"
] = (defined(
"SALE_PROC_REC_ATTEMPTS"
) ?
SALE_PROC_REC_ATTEMPTS
: 3);
43
$resultData[
"SUCCESS_PAYMENT"
] =
"Y"
;
44
45
if
($recurringID > 0)
46
\CSaleRecurring::Update
($recurringID, $resultData);
47
else
48
\CSaleRecurring::Add($resultData);
49
}
50
elseif
($recurringID > 0)
51
{
52
\CSaleRecurring::Delete
($recurringID);
53
}
54
}
55
else
56
{
57
if
(!$basketItem = $basket->getItemByBasketCode($basketCode))
58
{
59
throw
new
Main\ObjectNotFoundException
(
'Entity "BasketItem" not found'
);
60
}
61
62
$resRecurring =
\CSaleRecurring::GetList
(
63
array
(),
64
array
(
65
"USER_ID"
=>
$order
->getUserId(),
66
"PRODUCT_ID"
=> $basketItem->getProductId(),
67
"MODULE"
=> $basketItem->getField(
"MODULE"
),
68
"ORDER_ID"
=>
$order
->getId(),
69
)
70
);
71
while
($recurringData = $resRecurring->Fetch())
72
{
73
\CSaleRecurring::Delete
($recurringData[
"ID"
]);
74
}
75
}
76
}
77
}
78
}
79
}
Bitrix\Main\Localization\Loc\loadMessages
static loadMessages($file)
Определения
loc.php:65
Bitrix\Main\ObjectNotFoundException
Определения
ObjectNotFoundException.php:9
Bitrix\Sale\Recurring
Определения
recurring.php:19
Bitrix\Sale\Recurring\repeat
static repeat(Order $order, array $resultList)
Определения
recurring.php:26
CAllSaleRecurring\Delete
static Delete($ID)
Определения
recurring.php:97
CAllSaleRecurring\Update
static Update($ID, $arFields)
Определения
recurring.php:77
CSaleRecurring\GetList
static GetList($arOrder=array(), $arFilter=array(), $arGroupBy=false, $arNavStartParams=false, $arSelectFields=array())
Определения
recurring.php:47
array
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения
file_new.php:804
$order
$order
Определения
payment.php:8
elseif
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения
prolog_main_admin.php:393
SALE_PROC_REC_ATTEMPTS
const SALE_PROC_REC_ATTEMPTS
Определения
include.php:25
bitrix
modules
sale
lib
recurring.php
Создано системой
1.14.0