QuickView + msOptionsPrice2

Доброго времени суток!
Реализовывал ли кто быстрый просмотр товаров через QuickView при наличии модификаций товара (msOptionsPrice2)? Не могу найти внятного описания как подружить эти два дополнения.
Использую режим работы с селектором, поскольку не удалось разобраться с ошибками при использовании режима работы с модальным окном (на сайте используется bootstrap v4.5.0).

Подключение в подвале:

[[!QuickView.initialize?
  &bootstrapModalJsCss=`0`
  &bootstrapDialogJsCss=`0`
  &services=`miniShop2,msoptionsprice`
]]

Ниже вывожу каркас модального окна:

<div class="modal fade" id="modalQuickView">
  <div class="modal-dialog modal-xl">
    <div class="modal-content">
      <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">x</span></button>
      <div class="modal-body"></div>
    </div>
  </div>
</div>

В превью карточки вешаю код на кнопку:

<div class="product-action-2 tooltip-style-2">
  <button class="quickview" 
  data-click
  data-quickview-mode="selector"
  data-data-action="chunk"
  data-data-element="!modalQV"
  data-data-id="[[+id]]"
  data-quickview-output="#modalQuickView .modal-body"
  data-toggle="modal" 
  data-target="#modalQuickView">
  <i class="icon-size-fullscreen icons"></i>
  </button>
</div>

Чанк modalQV:

[[!msOptionsPrice.initialize?]]
<h2>[*pagetitle]]</h2>
<div class="product-details-area bg-white" id="msProduct">
  <form class="ms2_form msoptionsprice-product" method="post">
  <div class="container">
    <div class="row">
    <div class="col-xl-4 col-lg-5 col-md-6">
      [[!msGallery? &tpl=`tpl.productGalleryQuickView`]]
    </div>
    <div class="col-xl-8 col-lg-7 col-md-6">
      <div class="product-details-content pro-details-content-mrg">
      
      <input type="hidden" name="id" value="[[*id]]"/>
      
      [[!msOptionsPrice.option?
        &tpl=`tpl.productModifications.checkbox`
        &options=`[[*parent:pdofield=`productModOptionList`:replace=`||==,`]]`
        &constraintOptions=`[[*parent:pdofield=`productModOptionList`:productModOptionConstraint]]`
        &sortOptions=`productSize:SORT_ASC:SORT_NUMERIC, productLengthMetr:SORT_ASC:SORT_NUMERIC`
      ]]
      
      <div class="pro-details-price">
        <span class="new-price">
        <span class="msoptionsprice-cost msoptionsprice-[[*id]] new-price ml-0">[[+price]]</span>
        [[%ms2_frontend_currency]][[*parent:is=`73`:then=`/м.п.`]]
        </span>
        
        [[!+old_price:gt=`[[+price]]`:then=`
        <span class="old-price">
        <span class="msoptionsprice-old-cost msoptionsprice-[[*id]] old-price ml-0">[[+old_price]]</span>
        [[%ms2_frontend_currency]][[*parent:is=`73`:then=`/м.п.`]]
        </span>
        `]]
        
      </div>
      
      <div class="pro-details-action-wrap">
        
        <div class="pro-details-quality mr-15 mr-md-2- mr-lg-5-">
        <div class="cart-plus-minus fix">
          <input class="cart-plus-minus-box" type="text" name="count" id="product_price" value="1">
        </div>
        </div>
        
        <div class="pro-details-add-to-cart">
        <button type="submit" name="ms2_action" value="cart/add" class="anim_fly_btn">Купить</button>
        </div>
        <div class="pro-details-action d-none d-md-block">
        <button type="button" class="" onclick="location.href='[[~[[*id]]]]';">Подробнее о товаре</button>
        </div>
      </div>
      </div>
    </div>
    </div>
  </div>
  </form>
</div>

Проблематики у меня следующие:

1. При вызове быстрого просмотра в каталоге, не происходит обновление цены с учетом активной модификации. При этом если вручную сменить модификацию – обновление цены происходит.

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

3. Модификации в быстром просмотре работают ограниченное время, а потом перестают. Когда я после посещения карточки товара перехожу в каталог, то модификации в быстром просмотре перестают работать. Помогает только чистка кеша.

Буду рад любым подсказкам.
Антонио
14 сентября 2022, 17:22
modx.pro
668
0

Комментарии: 5

Артур Шевченко
14 сентября 2022, 21:17
0
Есть мнение, что проблема в JS. Я бы смотрел ошибки в консоли браузера для начала.
    Антонио
    14 сентября 2022, 21:28
    0
    В консоли нет ошибок. В логи тоже ничего не падает.
      Артур Шевченко
      14 сентября 2022, 21:36
      0
      Хорошо, что ошибок нет, а нужные события на нужных элементах висят?
        Антонио
        14 сентября 2022, 22:03
        0
        Не совсем понимаю о чем речь.
          Артур Шевченко
          14 сентября 2022, 22:21
          0
          1. При вызове быстрого просмотра в каталоге, не происходит обновление цены с учетом активной модификации. При этом если вручную сменить модификацию – обновление цены происходит.
          Чтобы это происходило, нужно отправлять запрос с выбранными опциями, а иначе msOptionsPrice2 просто не узнает о том, что ты используешь QuickView.
          А два других пункта связаны с тем, что msOptionsPrice2 просто не рассчитан на работу с несколькими товарами. Думаю, нужно дорабатывать JS.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    5