Всего 123 788 комментариев

Константин
18 сентября 2023, 13:02
0
Здравствуйте, код формы:
<form action="" method="post" class="ajax_form af_example">
                           <div class="row">
                              <div class="col-xxl-6 col-xl-6 col-lg-6 col-md-6">
                                 <div class="contact__input mb-30">
                                    <input type="text" id="af_name" name="name" value="[[+fi.name]]" placeholder="Ваше имя">
                                 </div>
                              </div>
                              <div class="col-xxl-6 col-xl-6 col-lg-6 col-md-6">
                                 <div class="contact__input mb-30">
                                    <input type="tel" id="af_phone" name="phone" value="[[+fi.phone]]" placeholder="Ваш телефон">
                                 </div>
                              </div>
                              <div class="col-xxl-6 col-xl-6 col-lg-6 col-md-6">
                                 <div class="contact__input mb-30">
                                    <input type="tel" id="af_email" name="email" value="[[+fi.email]]" placeholder="Почта для ответа">
                                 </div>
                              </div>
                              <div class="col-xxl-6 col-xl-6 col-lg-6 col-md-6">
                                 <div class="contact__input mb-30">
                                    <select id="af_theme" name="theme" value="[[+fi.theme]]">
                                       <option>Тема</option>
                                       <option>Подбор оборудования</option>
                                       <option>Консультация</option>
                                       <option>Запрос КП</option>
                                       <option>Заявка на обратный звонок</option>
                                    </select>
                                 </div>
                              </div>
                              <div class="col-xxl-12">
                                 <div class="contact__input mb-30">
                                    <textarea placeholder="Ваш вопрос"></textarea>
                                 </div>
                              </div>
                              <div class="col-xxl-12">
                                 <div class="contact__form-btn">
                                    <button type="submit" class="d-btn-corp">Отправить</button>
                                 </div>
                              </div>
                           </div>
                        [[+fi.success:is=`1`:then=`
  <div class="alert alert-success">[[+fi.successMessage]]</div>
  `]]
  [[+fi.validation_error:is=`1`:then=`
  <div class="alert alert-danger">[[+fi.validation_error_message]]</div>
  `]]
  <p><input type="checkbox" name="checkme"/> Я прочитал(а) и согласен с <a href="[[~35]]" target="_blank">политикой конфиденциальности</a></p>
                           </form>
                           
<div id="success-modal" class="alert alert-info d-none">
  <p>Спасибо за обращение! Сообщение успешно отправлено, мы перезвоним Вам в течении 5 минут!</p>
</div>
Скрипт класс не убирает…
<script>
  $(document).on('af_complete', function(e,response){
if(response.success){
$(response.form).find('#success-modal').removeClass('d-none');
}
});
</script>
Пробовал и этот
<script>
  $(document).on('af_complete', function(e,response){
if(response.success){
$(response.form).removeClass('d-none');
}
});
</script>
В консоли браузера ошибок нет
Павел Романов
18 сентября 2023, 12:47
0
Автор — Павел Гвоздь.
Протестировать любое дополнение можно на тестовом тарифе Modhost.
Виноградов Тимур
18 сентября 2023, 12:34
0
А вы автор? Есть возможность протестировать xParser?
Артур Шевченко
18 сентября 2023, 11:36
0
'msOnChangeInCart' должно срабатывать на любое изменение в корзине.

Без перезагрузки страницы сложно, тебе надо корзину перерисовывать и возвращать готовый html или всё корзину объектом. Это можно сделать только если ты расширишь обработчик корзины или напишешь свой коннектор на который будешь слать отдельный запрос на получение корзины после изменений в ней.
Виноградов Тимур
18 сентября 2023, 11:35
0
Присоединюсь к вопросу, кто-то использовал компонент в последнее время?
Автор на связи?
Алексей
18 сентября 2023, 10:45
0
Вроде разобрался, данные события case 'msOnChangeInCart': case 'msOnAddToCart': case 'msOnRemoveFromCart': не срабатывают при уменьшении количества товара в корзине, только на удаление. Поставил плагин на событие OnLoadWebDocument и цена обновляется в ту и в другую сторону. Еще бы научиться это делать без перезагрузки страницы.
Ivan
17 сентября 2023, 22:57
0
Не уверен, но там может быть доступна переменная {$total}, и тогда лучше сделать % $total == 0
Алексей
17 сентября 2023, 19:17
0
Большое спасибо Иван!
Поставил {if $idx == 4 or $idx % 32 == 0}
Всё заработало.
Ivan
17 сентября 2023, 18:54
0
Выведите {$idx} посмотрите что выведет. Возможно пдопейдж некешированным вызывается.
Алексей
17 сентября 2023, 18:51
0
А почему просто в чанке не вставить {if $idx == 1}ДОП БЛОК{/if}
Не знал об этом способе, спасибо. Вставил в чанк{if $idx == 4}… Он появляется на четвертой позиции. Но эффект тот же. Он только на первой странице.
Алексей
17 сентября 2023, 18:24
0
Удалено
Ivan
17 сентября 2023, 17:39
0
А почему просто в чанке не вставить {if $idx == 1}ДОП БЛОК{/if}
Ну если феном не работает то можно даже так схитрить
Вызвать
[[$chunk_rsya_[[+idx]]

И создать чанк chunk_rsya_1 и в нем вставить нужный вам код
Артур Шевченко
17 сентября 2023, 16:12
0
Тогда надо переходить к первому совету: логировать плагин.
Алексей
17 сентября 2023, 13:40
0
Отправляется
URL Запроса:
assets/components/minishop2/action.php
Метод Запроса:
POST
Код Статуса:
200
Артур Шевченко
17 сентября 2023, 12:33
0
Посмотри на вкладке Сеть в консоли браузера, отправляется или нет.
Алексей
17 сентября 2023, 11:09
0
Если удаляю товар из корзины при помощи кнопки
<button class="btn btn-default" type="submit" name="ms2_action" value="cart/remove"></button>
то обновление цены происходит, но если использую счетчик уменьшения кол-ва товара, то не работает. Видимо не срабатывает событие, хотя на увеличение срабатывает. Кнопки подключены так:
$('.minus').click(function () {
        var $input = $(this).parent().find('input');
        var count = parseInt($input.val()) - 1;
        count = count < 1 ? 1 : count;
        $input.val(count);
        $input.change();
        return false;
    });
    $('.plus').click(function () {
        var $input = $(this).parent().find('input');
        $input.val(parseInt($input.val()) + 1);
        $input.change();
        return false;
    });
Алексей
17 сентября 2023, 09:59
0
Я так понимаю здесь не перезаписывается почему-то обратно
$cart->set($tmp); //Записываем данные в корзину
 break;
Потому что если подобным сниппетом просто на экран выводить, то цена обновляется и в ту и в другую сторону.