Email-маркетинг: активация блока при 1 способе оплаты

Здравствуйте.

Флажок на подписку из модуля Email-маркетинг на странице оформления заказа будет показан, если пользователь нажал на один из предоставленных способов оплаты.

Если же способ оплаты всего один, или первым стоит тот вариант оплаты, который менять пользователь не хочет, то блок с подпиской показан не будет.

Все дело в файле
\app\addons\email_marketing\controllers\frontend\checkout.post.php

if (Registry::get('addons.email_marketing.em_show_on_checkout') == 'Y' && !empty(Tygh::$app['session']['cart']['user_data']['email']) && !fn_em_is_email_subscribed(Tygh::$app['session']['cart']['user_data']['email'])) {
    Tygh::$app['view']->assign('show_subscription_checkbox', true);
}

Так как ajax не срабатывает при простом заполнении поля email, проверки заполнения email тоже нет.
с одной стороны понятно, если логика оформления заказа не предусматривает обязательный email.
С другой стороны пользователь никогда не увидит блок с подпиской, если не нажмет на выбранный способ оплаты.

Спасибо за обращение. Проблема была исправлена, и исправление будет включено в ближайший релиз.
Вот файл diff, чтобы исправить проблему. Используйте его, как описано в документации.

2 лайка