По тех заданию нужно в скрипт вставить значения заказа
<script type="text/javascript">
(window["rrApiOnReady"] = window["rrApiOnReady"] || []).push(function() {
try {
rrApi.order({
transaction: <transaction_id>,
items: [
{ id: <product_id>, qnt: <quantity>, price: <price>},
{ id: <product_id>, qnt: <quantity>, price: <price> }
]
});
} catch(e) {}
})
</script>
Где:
<transaction_id> - ID транзакции,
<product_id> - ID товара (должно совпадать с ID, передаваемом в YML),
<qnt> - количество единиц товара в заказе,
<price> - цена за единицу товара.
Пример:
<script type="text/javascript">
(window["rrApiOnReady"] = window["rrApiOnReady"] || []).push(function() {
try {
rrApi.order({
transaction: 1235421421,
items: [
{ id: 12312, qnt: 4, price: 130 },
{ id: 64532, qnt: 1, price: 220 }
]
});
} catch(e) {}
})
</script>
Сейчас на странице, где нужно вставить этот скрипт я получаю данные:
<? echo "<pre>"; print_r($arResult[ORDER][ID]); echo "</pre>"; // ID транзакции
$obBasket = \Bitrix\Sale\Basket::getList(array('filter' => array('ORDER_ID' => $arResult[ORDER][ID])));
while($bItem = $obBasket->Fetch()){
echo $bItem['ID'].'<br/>'; // ID товара
echo round($bItem['QUANTITY'],2).'<br/>'; // количество единиц товара в заказе
echo round($bItem['PRICE'],2).'<br/>'; // цена за единицу товара
}
?>
Пример вывода
12016 // ID транзакции
52280 // ID товара
1 // количество единиц товара в заказе
650 // цена за единицу товара
52281 // ID товара
1 // количество единиц товара в заказе
650 // цена за единицу товара
52282 // ID товара
3 // количество единиц товара в заказе
2790 // цена за единицу товара
Как мне правильно передать все это в скрипт, в частности не могу сообразить с массовом items, товаров же может быть сколько угодно.