Также попробовал CSaleBasket::ADD[COLOR=#696969]В документации написано: [/COLOR]Функция добавляет товар в корзину, если его ещё нет, и обновляет параметры товара с увеличением количества, если он уже находится в корзине.
[CODE]
<?
AddEventHandler("sale", "OnBasketAdd", "AddPresentToBasket";
function AddPresentToBasket($ID,&$arFields)
{
$arFields = array(
"PRODUCT_ID" => 121,
PRODUCT_PRICE_ID => 0;
"PRICE" => 6000,
"CURRENCY "=> 'RUB',
"WEIGHT "=> 0,
"QUANTITY" => 2,
"LID" => SITE_ID,
"DELAY" => "N",
"CAN_BUY" => "Y",
"NAME" => "тест",
"CALLBACK_FUNC" => "MyBasketCallback",
"MODULE" => "catalog",
"NOTES" => "Товар в подарок",
"ORDER_CALLBACK_FUNC" => "MyBasketOrderCallback"
//DETAIL_PAGE_URL => ссылка на страницу детального просмотра товара;
//PROPS => массив свойств товара, который сохраняется в корзине. Каждый элемент этого массива является массивом следующего формата:
);
CSaleBasket::ADD(121, $arFields);
}
?>
[/CODE]
Функция отрабатывает, но добавляет товар... По докам теоретически должна изменять количество уже имеющегося товар в корзине... Товар с ID - 121 уже есть в корзине :)