В модуле реализована возможность интеграции без изменения шаблонов сайта, для этого необходимо активировать настройки "Сквозная интеграция в шаблон сайта". Пример вы можете увидеть в видео "Быстрый старт"
if (\Bitrix\Main\Loader::includeModule('acrit.bonus')) { \Acrit\Bonus\Core::getProductBonus($elementId, $iblockId = false, $count = 1, $arPrice = []); }
\Acrit\Bonus\Core::getProductBonus($elementId);
$elementId
Идентификатор товара. Обязательный параметр $iblockId
Идентификатор инфоблока товара. $count
количество товаров для расчета бонусов $price
массив с ценой товара, например шаблон catalog.element, массив $actualItem['ITEM_PRICES'][$actualItem['ITEM_PRICE_SELECTED']] $arResult['BONUS'] = \Acrit\Bonus\Core::getProductBonus($arResult['ID'], $arResult['IBLOCK_ID'], $count, $arPrice); if ($arResult['BONUS']['VALUE']) { echo 'Бонус: ' . $arResult['BONUS']['VALUE_FORMAT'] . ''; }
в шаблоне находим код
// выбранный для показа тип цены в каталоге, именно относительно него и рассчитываем бонус $price = $actualItem['ITEM_PRICES'][ $actualItem['ITEM_PRICE_SELECTED'] ];и после него размещаем код
if(\Bitrix\Main\Loader::includeModule('acrit.bonus')){ $arResult['BONUS'] = \Acrit\Bonus\Core::getProductBonus($actualItem['ID'], $actualItem['IBLOCK_ID'], 1, $price); }
Выводим бонус в необходимом месте
Бонус:
echo $arResult['BONUS']['VALUE_FORMAT']
В result_modifier.php
if (\Bitrix\Main\Loader::includeModule('acrit.bonus')) { \Acrit\Bonus\Core::getProductsBonus($arResult); }
В шаблоне ...\catalog.item\.default\card\template.php
Бонус:
echo $item['BONUS']['VALUE_FORMAT']
if (\Bitrix\Main\Loader::includeModule('acrit.bonus')) { $bonus = \Acrit\Bonus\Core::getCartOrderBonus('CART'); echo "Ваш бонус: ".$bonus['VALUE_FORMAT']; }
Возвращает список бонусов заказов пользователя $userId
.
\Acrit\Bonus\Order::getUserOrdersBonus($userId);Ключи массива это orderId
метод аналогичен getUserOrdersBonus только бонус с учетом валюты
\Acrit\Bonus\Order::getUserOrdersBonusFormat($userId);
Баланс пользовательского бонусного счета с учетом валюты
\Acrit\Bonus\Core::getUserBalanceFormat($userId, $accountId = false);
$accountId
- это бонусный счет текущего сайта