[`Точка продаж`]
[`Точка, к которой «Снова» отнесёт чеки этой витрины. По ней срабатывают правила начисления и списания, привязанные к точке (например, «счастливые часы» — только офлайн), и она идёт отдельной строкой в отчётах. Список приходит после проверки ключа.`]
[`Когда начислять баллы`]
[`Чек проводится один раз. Списание из чекаута уходит тем же чеком.`]
[`Карта лояльности`]
[`Отметившему галочку придёт ссылка на карту — на странице заказа и в письме.`]
[`Оформление блока`]
[`Разметка и стили блока в чекауте`]
[`Здесь код, который работает сейчас: пока он из дистрибутива, он обновляется вместе с плагином и не правится. «Взять за основу» — править на этой витрине, «Вернуть к дистрибутиву» — откатить.`]
[`Разметка`] Smarty + HTML
[`Стили`] CSS
[`Свои стили заменяют стандартные целиком: пока поле пусто, работает файл плагина.`]
[`Что можно вставить в разметку`]
{literal}{$snova.card.balance}{/literal} — [`баллов на карте`]
{literal}{$snova.currency}{/literal} — [`как называются баллы`]
{literal}{$snova.card.tier.name}{/literal} — [`уровень гостя`]
{literal}{$snova.card.barcode}{/literal} — [`номер карты`]
{literal}{$snova.max_redeem}{/literal} — [`сколько можно списать`]
{literal}{$snova.point_value}{/literal} — [`рублей за балл`]
{literal}{$snova.requested}{/literal} — [`сколько выбрал покупатель`]
{literal}{$snova.join_url}{/literal} — [`страница программы (для QR и ссылок)`]
{literal}{$snova.is_auth}{/literal} — [`покупатель вошёл в магазин`]
{literal}{$snova.api_error}{/literal} — [`«Снова» не ответила`]
{literal}{$snova.login_url}{/literal} — [`адрес входа в магазин`]
{literal}{$snova.issue_mode}{/literal} — [`предлагать ли карту:`] off, checkbox_off, checkbox_on
{literal}{$snova.issue_checked}{/literal} — [`галочка карты отмечена`]
[`Не трогайте имена полей`] snova[redeem], snova[card],
data-reload="1" [`и классы`] snova-checkout,
snova-checkout__input, snova-checkout__all,
snova-checkout__none,
data-snova-max: [`на них держатся пересчёт корзины и кнопки. Остальное — ваше.`]
[`Ошибка в коде не ломает заказ: покупателю показывается стандартный вид, а ошибка — здесь, при сохранении.`]
[`Пункт в кабинете покупателя`]
[`Ссылка «Мои баллы»`]
[`Разметка ссылки`] Smarty + HTML
[`Обёртку и выделение рисует тема — от вас только ссылка.`]
[`Доступны`] {literal}{$snova.url}{/literal},
{literal}{$snova.balance}{/literal},
{literal}{$snova.currency}{/literal},
{literal}{$snova.tier}{/literal},
{literal}{$snova.card}{/literal}.
[`Баланс запрашивается, только если упомянут; у гостя без карты он пуст — оберните в`]
{literal}{if $snova.card}…{/if}{/literal}.
[`Страница «Мои баллы»`]
[`Разметка и стили страницы`]
[`Страница, куда ведёт пункт кабинета: баланс, кнопка карты и история. Тот же порядок, что у блока в чекауте — код виден, правится, откатывается.`]
[`Разметка`] Smarty + HTML
[`Стили`] CSS
[`Что можно вставить в разметку`]
{literal}{$snova.card.balance}{/literal} — [`баллов на карте`]
{literal}{$snova.currency}{/literal} — [`как называются баллы`]
{literal}{$snova.card.tier.name}{/literal} — [`уровень гостя`]
{literal}{$snova.card.barcode}{/literal} — [`номер карты`]
{literal}{$snova.phone}{/literal} — [`телефон из профиля покупателя`]
{literal}{$snova.history}{/literal} — [`движения баллов:`] date, delta, balanceAfter, reason, reasonLabel, comment, amount
{literal}{$snova.card_url}{/literal} — [`адрес формы «завести карту»`]
{literal}{$snova.orders_url}{/literal} — [`адрес «Мои заказы»`]
{literal}{$snova.error}{/literal}, {literal}{$snova.flash}{/literal} — [`ошибка и сообщение после действия`]
[`Форма карты обязана нести`] {literal}{$wa->csrf()}{/literal}
[`и слать POST на`] {literal}{$snova.card_url}{/literal}: [`без этого кнопка «завести карту» не сработает.`]