Финансовая поддержка VPS, бесплатные дополнения и docs Донаты оплачивают сервер и двигают бесплатные дополнения MODX и документацию. Поддержать

Всего 126 144 комментария

Василий Наумкин
Василий Наумкин
Как он может блокировать запросы?!

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

При загрузке страницы запускается только miniShop2.initialize();, который устанавливает обработчики на некоторые элементы.

Например, на ссылки с классом «ms2_link», но никто не мешает тебе добавить еще и свой класс и повешать собственное событие на него.

Никаких «блокировок» нет.
Олег Ракул
Олег Ракул
Дело в том, что minishop2 блокирует ajax запросы и с помощью этого сниппета и с помощью голого jquery по load. Обновиться корзине получается, но где-то один раз из 10 событий по клику на кнопке «В корзину», миникорзина и сама корзина стопорится товары в них не собираются. Без Ajax все отлично.
Я понимаю что не программист, но вижу тут подобие бага, его можно обойти?
Pavel Kravchuk
Pavel Kravchuk
Подскажите плиз, можно снипетом msProducts вывести только новые товары не хакая его?
Я пока добавил такой код в сам снипет, но может есть решение проще.
if (!empty($showNew)) {$where[] = "new=$showNew";}
И еще, у меня при вызове снипета постоянно вылазит ошибка:
Warning: Invalid argument supplied for foreach() in /home/........../modsnippet/22.include.cache.php on line 50
В чем может быть причина ее появления? Если вызываю кешированный снипет, то ошибка появляется только первый раз, если не кешированный, то постоянно.
Виталий Князь
Виталий Князь
core/components/tickets/model/tickets/ticket.class.php
Найти строки где есть
'isfolder' => 0
и заменить на
'isfolder' => 1
Вы вносите изменения на свой страх и риск!

Это для версии 0.8.2, в версии 0.9.2 уже другие файлы видимо надо править.

В поздних версиях это правится в файлах:
core/components/tickets/processors/mgr/ticket/create.class.php
Wassi Wassinen
Wassi Wassinen
Добавлю, может быть поможет понять в чем дело:

При выводе мсгалереи не было никакого значения у src. Полез в чанк tpl.msGallery.row, в значениях src стоял плейсхолдер [[+file]]. Так и должно быть? У тебя на тестовом сайте стоит [[+image]] по дефолту и ты от него пляшешь ресайзами, тумбофом и прочим. У меня не мог модекс какую-нибудь старую версию подтянуть?
Василий Наумкин
Василий Наумкин
В смысле, научить использовать jquery?

Отправляешь
ajax запрос на сервер, своему скрипту, он смотрит в корзину и возвращает оформленные товары, которые ты вставляешь на страницу.

В родном функционале этого нет, но легко можно сделать своим сниппетом.
Олег Ракул
Олег Ракул
Понятно — речь про миникорзину. Но мне нужна основная. Понял, что корзина прописывает в код страницы строчки с товарами, но не добавляет их в реальном времени. У метода .remove есть функция remove_position. Можно дать намек как сделать нечто подобное для метода .add?
Василий Наумкин
Василий Наумкин
Нужно получить объекты msProductFile.

Хотя бы так:
$images = $modx->getCollection('msProductFile', array('product_id' => 15, 'type' => 'image', 'parent' => 0));
foreach ($images as $image) {
	print_r($image->toArray());
}
parent = 0 у оригинальных картинок, которые являются родителями для превьюшек. Есть еще поле rank — это сортировка в админке.