Компоненты
Модуль поставляется в комплекте с компонентами:
| Название | Описание |
|---|---|
| rarus.lms:balance | Вывод бонусного счета пользователя |
| rarus.lms:basket | Отображение начисляемых бонусных баллов |
| rarus.lms:order | Форма для ввода оплаты бонусами и промокодом |
| rarus.lms:certificate.buy | Форма покупки произвольного сертификата |
rarus.lms:balance
-
Создайте страницу, например /personal/bonus/index.php
-
Подключите компонент
<?php require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php"); global $APPLICATION; $APPLICATION->setTitle('Мои бонусы'); $APPLICATION->IncludeComponent( 'rarus.lms:balance', '' ); require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/footer.php");
rarus.lms:basket
-
Откройте файл template.php компонента bitrix:sale.basket.basket
-
Найдите строку
<div id="basket-root" class="bx-basket bx-<?= $arParams['TEMPLATE_THEME'] ?> bx-step-opacity" style="opacity: 0;"> -
После нее вставьте код компонента
<?php $APPLICATION->IncludeComponent( 'rarus.lms:basket', '' ); ?>
rarus.lms:order
-
Откройте файл template.php компонента bitrix:sale.order.ajax
-
Найдите строку
ORDER SAVE BLOCK -
Перед ней вставьте код компонента
<?php $APPLICATION->IncludeComponent( 'rarus.lms:order', '', [ 'PERSON_TYPE_ID' => $arResult['USER_VALS']['PERSON_TYPE_ID'] ] ); ?>
rarus.lms:certificate.buy
-
Создайте раздел, например, gift-card
-
Разместите в index.php код компонента
<?php require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php"); global $APPLICATION; $APPLICATION->IncludeComponent( "rarus.lms:certificate.buy", "", [ 'PAYMENT_SYSTEM' => 1, 'PAYMENT_URL' => '/gift-card/payment.php' ] ); require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/footer.php"); -
Настройте параметры PAYMENT_SYSTEM — идентификатор платежной системы, PAYMENT_URL — страница оплаты
-
Создайте страницу оплаты, например, /gift-card/payment.php
<?php require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php'); use Bitrix\Main\Application; use Bitrix\Main\Loader; use Bitrix\Sale\Order; $request = Application::getInstance()->getContext()->getRequest(); global $APPLICATION; ?> <?php try { Loader::includeModule('sale'); $order = Order::load($request->getQuery('ORDER_ID')); if (!$order) { throw new \InvalidArgumentException('Заказ не найден'); } ob_start(); $APPLICATION->IncludeComponent( 'bitrix:sale.order.payment', '', [ 'PAY_SYSTEM_ID' => 1, 'PERSON_TYPE_ID' => '1' ] ); $formPay = ob_get_contents(); ob_end_clean(); require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_after.php'); ?> <div class="p1"> <?= $formPay ?> </div> <?php } catch (Throwable $e) { require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_after.php'); ?> <p> К сожалению, на данный момент оплата по этому счету через сервис невозможна! </p> <?php } ?> <?php require $_SERVER['DOCUMENT_ROOT'] . '/bitrix/footer.php'; -
Настройте параметры PAY_SYSTEM_ID — идентификатор платежной системы, PERSON_TYPE_ID — Тип плательщика
-
Создайте инфоблок, которые является торговым каталогом. В инфоблок будут добавляться подарочные сертификаты в виде товаров.
-
Перейдите в настройки модуля 1С Рарус: Система управления лояльностью ПРО в административной части сайта и установите параметры создания подарочных сертификатов. Установите режим покупки и отправки сертификата. Для режима работы прямая оплата и возможности работы компонента без авторизации требуется дополнительно установить разрешение "Разрешить просмотр заказа по ключу без авторизации" в настройках модуля интернет-магазин (штатная настройка в 1С-Битрикс).
-
В разделе Настройки → Настройки продукта → Почтовые и СМС события → Типы событий создайте почтовое событие RARUS_LMS_SEND_CERTIFICATE, необходимое для отправки письма с кодом подарочного сертификата.
-
В разделе Настройки → Настройки продукта → Почтовые и СМС события → Почтовые шаблоны создайте почтовый шаблон со следующими параметрами:
- От кого: #DEFAULT_EMAIL_FROM#
- Кому: #TO#
- Тема: Подарочный сертификат
- Тип: HTML
Макет html письма:
```
<!DOCTYPE html>
<html lang="en" xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<meta charset="utf-8">
<meta name="x-apple-disable-message-reformatting">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="format-detection" content="telephone=no, date=no, address=no, email=no">
<!--[if mso]>
<noscript>
<xml>
<o:OfficeDocumentSettings xmlns:o="urn:schemas-microsoft-com:office:office">
<o:PixelsPerInch>96</o:PixelsPerInch>
</o:OfficeDocumentSettings>
</xml>
</noscript>
<style>
td,th,div,p,a,h1,h2,h3,h4,h5,h6 {font-family: "Segoe UI", sans-serif;
mso-line-height-rule: exactly;}
</style>
<![endif]-->
<title>Вам подарочный сертификат</title>
<style>
@media (max-width: 600px) {
.sm-w-full {
width: 100% !important;
}
.sm-px-24 {
padding-left: 24px !important;
padding-right: 24px !important;
}
.sm-leading-32 {
line-height: 32px !important;
}
}
</style>
</head>
<body style="margin: 0; width: 100%; padding: 0; word-break: break-word;
-webkit-font-smoothing: antialiased; background-color: #efefef;">
<div style="display: none;">Вы стали счастливым обладателем подарочного
сертификата#847; ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ‌
 ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
͏ ͏ ͏ ‌
 ͏ ͏ ͏ ͏ ͏ </div>
<div role="article" aria-roledescription="email" aria-label="Вам подарочный сертификат"
lang="en">
<table style="width: 100%; font-family: ui-sans-serif, system-ui, -apple-system,
'Segoe UI', sans-serif;" cellpadding="0" cellspacing="0" role="presentation">
<tr>
<td align="center">
<table class="sm-w-full" style="width: 600px;" cellpadding="0" cellspacing="0"
role="presentation">
<tr>
<td align="center" class="sm-px-24">
<table style="margin-top: 64px; margin-bottom: 64px; width: 100%;"
cellpadding="0" cellspacing="0" role="presentation">
<tr>
<td style="text-align: center;">
<img
src="https://rzn-wb-01.1c-hosting.com/images/email/sul-certificate/sul-certificate.png"
alt="Подарочный сертификат" style="max-width: 100%; vertical-align: middle; line-height:
100%; border: 0;">
</td>
</tr>
<tr>
<td class="sm-px-24" style="border-radius: 4px; background-color: #ffffff;
padding: 48px; text-align: left; font-size: 16px; line-height: 24px;">
<p class="sm-leading-32" style="margin: 0; margin-bottom: 24px; text-align:
center; font-size: 24px; font-weight: 600; color: #000000;">Поздравляем!</p>
<p style="margin: 0; margin-bottom: 24px; text-align:
center;">#TEXT#<br><br>Отправитель: #FROM#</p>
<div style="line-height: 100%;">
<div style="margin: auto; border-radius: 4px; background-color: #f3f3f3;
padding-top: 20px; padding-bottom: 20px; padding-left: 24px; padding-right: 24px; text-align:
center; font-size: 18px; font-weight: 600; color: #333333;">
<span>#CERTIFICATE#</span>
</div>
<p style="margin-top: 8px; text-align: center; font-size: 14px; color:
#757575;">Сертификат действует в течение года с момента активации</p>
<p style="margin-top: 40px; text-align: center; font-weight: 600;">Удачных
покупок! </p>
</div>
<table style="width: 100%;" cellpadding="0" cellspacing="0"
role="presentation">
<tr>
<td style="padding-top: 32px; padding-bottom: 32px;">
<div style="height: 1px; line-height: 1px;">‌</div>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td style="height: 48px;"></td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</body>
</html>
```
-
В разделе Настройки → Настройки продукта → Почтовые и СМС события → Типы событий создайте почтовое событие RARUS_LMS_CERTIFICATE_CREATE_ERROR, необходимое для отправки письма уведомления об ошибке при создании подарочного сертификата.
-
В разделе Настройки → Настройки продукта → Почтовые и СМС события → Почтовые шаблоны создайте почтовый шаблон со следующими параметрами:
- От кого: #DEFAULT_EMAIL_FROM#
- Кому: <admin_email>
- Тема: Ошибка при создании сертификата
- Тип: Текст
Макет письма:
Ошибка при создании сертификата. Заказ: #ORDER_ID# Ошибка: #ERROR# Проверьте заказ в админке. -
Для типа отправки по SMS событие и шаблон устанавливаются аналогичным способом.




No comments to display
No comments to display