[QuickView] - быстрый просмотр ресурсов

Переписан пакет [msQuickView] — быстрый просмотр товаров.
[QuickView] — быстрый просмотр товара, покупка, возможность вывести любой ресурс в модальном окне.
Возможность перемещаться между товарами «Предыдущий» «Следующий» в уже открытом модальном окне.

ссылка на тестовый сайт quickview.vgrish.ru/

QuickView для каталога товаров с mFilter2


В шаблоне продукта вызов сниппета QuickView

[[!QuickView?
    &id=`[[+id]]`
    &title=`заголовок`
    &parentSelector=`#mse2_results`
    &bootstrapJsCss=`0`
]]
    

QuickView для показа корзины msCart


В чанке Navbar вызов сниппета QuickView

[[!QuickView?
  &chunk=`tpl.QuickView.msCart`
  &form=`form.QuickView.msCart`
  &title=`Корзина`
  &closable=`1`
  &withNeighbors=`0`
  &bootstrapDialogSize=`size-wide`
  &objectName=`quickviewcart`
  &frontendJs=`/assets/components/quickview/js/defaultcart.js`
  &parentSelector=`li`
  &bootstrapModalJsCss=`0`
  &findhandlersJs=`1`
  &onshownCustomJs=`(findEventHandlers("change", miniShop2.Cart.cart + ' ' + miniShop2.Cart.countInput).length == 0) ? miniShop2.Cart.initialize() : ''`
]]

QuickView параметры вызова сниппета


  • id Идентификатор ресурса
  • chunk Чанк, который будет использован для обработки
  • form Чанк с формой для отправки запроса
  • frontendCss Файл с css стилями для подключения на фронтенде
  • frontendJs Файл с javascript для подключения на фронтенде
  • actionUrl Коннектор для обработки ajax запросов
  • selector Имя CSS класса, который будеи использован как jQuery селектор для инициализации формы. По умолчанию «quickview»
  • parentSelector Имя CSS класса, который будеи использован как jQuery селектор при выборе контейнера с соседними ресурсами
  • withNeighbors Показывать ссылки на соседние ресурсы
  • mainJsCss Подключить файлы библиотек
  • bootstrapJsCss Подключить файлы bootstrap
  • bootstrapModalJsCss Подключить файлы bootstrap-modal
  • bootstrapDialogJsCss Подключить файлы bootstrap-dialog
  • bootstrapDialogSize Размер bootstrap-dialog
  • objectName Имя объекта для инициализации в подключаемом javascript. По умолчанию «quickview»
  • getResource Ключ кэша сниппета. Если пустое — кэширование результатов будет отключено
  • cacheResourceKey Ключ кэша ресурса. Если пуст — кэширование ресурса будет отключено
  • cacheKey Ключ кэша чанка. Если пуст — кэширование результата будет отключено
  • findhandlersjsJs Файл с findhandlersjs.js для подключения на фронтенде
  • bootstrapModalJs Файл с bootstrap-modal.js для подключения на фронтенде
  • bootstrapModalCss Файл с bootstrap-modal.css для подключения на фронтенде
  • bootstrapDialogJs Файл с bootstrap-dialog.js для подключения на фронтенде
  • bootstrapDialogCss Файл с bootstrap-dialog.css для подключения на фронтенде
  • jqueryJs Файл с jquery.js для подключения на фронтенде
    • p.s. Хотелось выложить в магазин на замену [msQuickView] с сохранением покупок. Сейчас уточняется этот вопрос.
      Всем спасибо за внимание…
Володя
14 сентября 2015, 15:52
modx.pro
6
7 882
+7
Поблагодарить автора Отправить деньги

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

Павел Ширяев
14 сентября 2015, 23:10
+1
Как же это прекрасно! MS2 хорошеет день ото дня за счет таких вот дополнений!

Для товаров еще сценариев использования не придумал, а вот корзина в модальном окне — очень круто! Надо будет прикупить.
    Павел Гвоздь
    15 сентября 2015, 07:23
    0
    Жму на 2 или 3 товар, далее на «следующий» переключаю, а он мне на 1 переключает.
      Володя
      15 сентября 2015, 09:25
      0
      да, спасибо. Уже сам заметил этот косяк.
      Хотел схитрить и обойтись одним кодом на несколько вызовов… Видимо не судьба.

      Поправил…
      Николай
      15 сентября 2015, 10:14
      0
      а к шопкиперу с товарами в Migx можно прикрутить?
        Володя
        15 сентября 2015, 10:18
        0
        при вызове сниппета QuickView указать идентификатор товара в Migx, далее он будет передан в чанк, в чанке ваш сниппет который по идентификатору выведет товар, а затем все это выводится в модальное окно.
        так что да, можно
        Алексей Андреев
        16 сентября 2015, 17:15
        +1
        Достойное продолжение msQuickView :) ждём в магазине
          Володя
          17 сентября 2015, 13:34
          0
          Отправил в магазин. Скоро будет.
          Илья
          19 сентября 2015, 10:37
          0
          p.s. Хотелось выложить в магазин на замену [msQuickView] с сохранением покупок. Сейчас уточняется этот вопрос.
          Всё таки нужно покупать?
            Илья
            06 октября 2015, 12:23
            0
            Володя подскажите, эта версия работает только с MS2?
              Володя
              06 октября 2015, 12:36
              0
              Работает с любым ресурсом, MS2 не обязателен.
              Сергей Самусев
              15 октября 2015, 11:03
              0
              Не открываются модалки ни товаров ни корзины. Нужно ли дополнительно подключать бутстраповские скрипты.
              http://upgrade.aykasan.com/catalog/pizza/
                Володя
                15 октября 2015, 11:08
                0
                да, если у вас на сайте они не используются то укажите параметр
                &bootstrapModalJsCss=`1`
                в вызове сниппета QuickView
                Володя
                15 октября 2015, 11:11
                0
                а теперь раскомментируйте в .htaccess
                php_flag register_globals Off
                  Сергей Самусев
                  15 октября 2015, 13:37
                  0
                  PHP 5.6.13 (cli) (built: Sep 3 2015 14:08:58)
                  Copyright © 1997-2015 The PHP Group
                  Zend Engine v2.6.0, Copyright © 1998-2015 Zend Technologies

                  Данная возможность была помечена УСТАРЕВШЕЙ начиная с версии PHP 5.3.0 и была УДАЛЕНА в версии PHP 5.4.0.
                Антон Левиц
                Антон Левиц
                02 ноября 2015, 12:50
                0
                Можно ли вызывать всплывающую корзину при добавление товара в корзину?
                  Володя
                  02 ноября 2015, 13:09
                  0
                  добавьте код
                  /* событие на добавление товара в корзину */
                  miniShop2.Callbacks.Cart.add.response.success = function(response) {
                  	$('.nav').find('.quickview-view').slice(0, 1).trigger('click');
                  }
                  /*
                  .nav - селектор родителя контейнера со снипппетом quickview для корзины
                  .quickview-view - селектор активного элемента 
                  */
                    Антон Левиц
                    Антон Левиц
                    02 ноября 2015, 14:44
                    0
                    спасибо, вот это очень полезно
                  Николай
                  28 апреля 2016, 21:14
                  0
                  Уважаемый создатель, тут quickview.vgrish.ru/ у вас фильтр очень интересный.

                  Это что, mSearch за 2000 руб. Или что-то другое, по-дешевле и по-проще?
                    Здоров Александр
                    28 апреля 2016, 21:17
                    +1
                    да это msearch2 за 1990.
                    рекомендую, однозначно крутая и полезная вещь, главное разобраться, включив голову
                      Николай
                      28 апреля 2016, 22:01
                      0
                      спасибо, надо брать
                    Николай Хохлунов
                    10 августа 2016, 19:52
                    0
                    Внутри #mse2_results не появляется модалки, при этом JSON приходит
                      Виктор
                      22 августа 2016, 11:47
                      0
                      Странно, но bootstrapDialogSize просто увеличивает шрифт (quickview-1.1.3-beta).
                        Володя
                        22 августа 2016, 13:07
                        0
                        стилей не хватало, поправил, обновляйтесь.
                        Евгений Webinmd
                        10 декабря 2016, 00:49
                        0
                        Володя, добрый вечер
                        тут заказчик купил этот модуль, поставил, вывели у товара, кнопка появилась, но при нажатии в консоль такое вот сообщение вылезло:

                        jquery.min.js:4 Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check xhr.spec.whatwg.org/.send
                        @ jquery.min.js:4ajax
                        @ jquery.min.js:4getResponse
                        @ default2.js:110(anonymous function)
                        @ default2.js:45dispatch
                        @ jquery.min.js:3q.handle
                        @ jquery.min.js:3
                        bootstrap.min.js:6 Uncaught TypeError: Cannot call a class as a function(…)
                        default2.js — это я уже скопировал скрипт на всякий случай, но еще не ковырял его, он идентичен оригиналу
                        Есть подозрения что это из-за того что в верстке используется bootstrap 4 (хотя его полностью убирал) но всё равно непонятно.

                        Собственно вопрос, не тестировался ли компонент с новой версией bootstrap или не сталкивался ли с такой вот проблемой?

                        Как заказчик скинет доступы в кабинет modstore, напишу туда уже, если не получится разобраться.
                          Евгений Webinmd
                          12 декабря 2016, 16:02
                          0
                          Решение для моей ситуации (QuickView + bootstrap 4): Обновить bootstrap-dialog.min.js
                          Новый код взял отсюда:
                          github
                          Oleg Pimanov
                          14 марта 2017, 16:18
                          0
                          Добрый день! Прописал вызов вида в tpl.msProducts.row, но при нажатии ничего не срабатывает и к тому же перестала срабатывать кнопка купить.
                          [[!QuickView?
                              &id=`[[+id]]`
                              &title=`заголовок`
                              &parentSelector=`#mse2_results`
                              &bootstrapJsCss=`0`
                          ]]
                          Владимир
                          11 апреля 2017, 12:37
                          +1
                          Возможность перемещаться между товарами «Предыдущий» «Следующий» в уже открытом модальном окне.
                          Володь, подскажи, работает QuickView сейчас не с товарами? С обычными ресурсами и тикетами?
                            Володя
                            11 апреля 2017, 13:56
                            +3
                            Володь, подскажи, работает QuickView сейчас не с товарами? С обычными ресурсами и тикетами?
                            да, конечно работает. Там нужно сменить в шаблоне вывода сниппет по умолчанию msProduct на pdoResources например.

                            Планирую вообще кардинально обновить этот компонент по ряду причин… Чтоб было попроще.
                              Владимир
                              11 апреля 2017, 13:59
                              0
                              Спасибо! Помню, что когда-то не он работал без Минишопа, но видать это было очень давно.
                            Илья
                            14 апреля 2017, 21:10
                            0
                            Подскажите, возможно ли использовать только bootstrap-modal без bootstrap-dialog?
                            Использую собственный стиль bootstrap-modal, а bootstrap-dialog меняет стиль модального окна, и вообще, не хочется вызывать лишние файлы при уже имеющимся собственном bootstrap-modal.
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                            34