Станислав
С нами с 25 марта 2017; Место в рейтинге пользователей: #260[РЕШЕНО] Плагин msOnBeforeCreateOrder иногда не срабатывает
Всем привет!
Есть задача: при попытке оформления нового заказа в minishop2, если заказчик уже есть в БД и у него есть хотя бы один заказ, выдавать предупреждение и не оформлять текущий заказ. Казалось бы, достаточно простая задача, был написан плагин на событие msOnBeforeCreateOrder
Что-то не так в коде плагина? Я пытался воспроизвести эту ситуацию — но всё норм, плагин не пропускает повторный заказ моего пользователя.
Есть задача: при попытке оформления нового заказа в minishop2, если заказчик уже есть в БД и у него есть хотя бы один заказ, выдавать предупреждение и не оформлять текущий заказ. Казалось бы, достаточно простая задача, был написан плагин на событие msOnBeforeCreateOrder
<?php
if ($modx->event->name == 'msOnBeforeCreateOrder') {
$arr = $order->get();
$email = str_replace(' ', '', $arr['email']);
$user = $modx->getObject('modUserProfile', ['email' => $email]);
if(is_object($user)) {
$user_id = $user->internalKey;
$orders = $modx->getCollection('msOrder', ['user_id' => $user_id]);
if (count($orders) > 0) {
$modx->event->output('пользователь с email '.$arr['email'].' уже зарегистрирован! Попробуйте ввести другой email');
}
}
}
Плагин срабатывает корректно, но в списке заказов увидел, что у пары пользователей есть более одного заказа. Что-то не так в коде плагина? Я пытался воспроизвести эту ситуацию — но всё норм, плагин не пропускает повторный заказ моего пользователя.
Minishop, хиты продаж
Здравствуйте. Ребят, подскажите, есть ли решение или как сделать вывод товаров по количеству продаж? Minishop, как я понял не ведет статистику, какой товар сколько раз куплен, чтобы просто сделать выборку из них и вывести последние?
Hook Formit. CallTouch + MODX
Всем привет!
Поступила задача на интеграцию форм с calltouch.ru/
На сайте есть информация Как подключить заявки с сайта к отслеживанию Calltouch
Мы же выберем решение в виде хука для Formit.
Поступила задача на интеграцию форм с calltouch.ru/
На сайте есть информация Как подключить заявки с сайта к отслеживанию Calltouch
Мы же выберем решение в виде хука для Formit.
Не работает лог modx
Поставили последнюю версию controlErrorLog, прекратились записываться логи, т.е. никаких ошибок, обновление modx, проверка параметров системных настроек результатов не дало, удаление компонента тоже, может кто сталкивался с таким…
Обернуть каждые N элементов массива в Fenom
Здравствуйте уважаемые друзья! Вопрос в том как вывести элементы массива с учетом того что каждые четыре должны быть обернуты в тег? Например вот стандартный чанк ms2gallery:
{if $files?}
<div class="slider">
{foreach $files as $file}
<div class="slide">
<img src="{$file['url']}">
</div>
{/foreach}
</div>
{/if}
А нужно (просто привожу схематично структуру):{if $files?}
<div class="slider">
<div class="slide">
<img src="{$file['url']}">
<img src="{$file['url']}">
<img src="{$file['url']}">
<img src="{$file['url']}">
</div>
{/foreach}
</div>
{/if}
Понимаю что нужен какой-то цикл for 1..4 но как его реализовать не решу… Не могу запустить pdo внутри чанка, обрабатываемого через плагин, как исправить?
Есть плагин, в котором генерируются ресурсы, все выводится нормально, почти.., но не могу там запустить допустим сниппет, или эту команду [[#[[+tv.customer-id]].pagetitle]] он выводит это как текст, а если ставить просто [[+tv.customer-id]], то тупо выведет айди, а нужно, чтобы вывел заголовок страницы.
Часть кода
Часть кода
$params = array(
'parents' => $parent,
'limit' => 6,
'depth' => 1,
'offset' => $offfset,
'level' => 1,
'tpl' => $tpl,
'includeTVs' => $tvs,
'where' => $modx->toJSON($where)
);
$goods = $modx->runSnippet('pdoPage',$params);
Так выглядит темплейт.<tr>
<td>[[+idx]]</td>
<td>
<p>
[[+pagetitle]]
</p>
</td>
<td>
<p>
[[+tv.object-name]]
</p>
</td>
<td>
<p>[[#[[+tv.project-type]].pagetitle`]]</p>
</td>
<td>
<p>
[[+tv.from-year]][[+tv.by-year:!empty=`-[[+tv.by-year]]`]]
</p>
</td>
<td>
<p>
[[+tv.project-additional]]
</p>
</td>
</tr>
Варианты отображения товаров в каталоге, плиткой или прайсом
Добрый день! Подскажите, как настроить переключатели вариантов отображения товаров в каталоге (плиткой, списком, прайсом). С перезагрузкой страницы.
/katalog/?display=plitka
/katalog/?display=list
/katalog/?display=price
Панируется для каждого варианта подключить отдельный чанк. (plitka.tpl, list.tpl, price.tpl)
Можно ли использовать для этого mFilter?
/katalog/?display=plitka
/katalog/?display=list
/katalog/?display=price
Панируется для каждого варианта подключить отдельный чанк. (plitka.tpl, list.tpl, price.tpl)
Можно ли использовать для этого mFilter?
Консольный импорт ms2Gallery добавить теги
Добавляю изображения в галерею таким образом:
foreach ($values['files'] as $file) {
$response = $modx->runProcessor('gallery/upload', array(
'file' => $file, // Путь к файлу от корня сервера
'id' => $id // id ресурса с галереей
),
array('processors_path' => MODX_CORE_PATH . 'components/ms2gallery/processors/mgr/')
);
if ($response->isError()) {
print_r($response->getAllErrors());
}
}
Как мне к загружаемой картинке добавить теги? pdoPage Загрузка при клике на кнопку "Загрузить больше"
Добрый вечер. Есть галерея картинок. При загрузке страницы загружается 14 изображений, при клике на которые при помощи «baguetteBox» показывается изображение на весь экран, ну в общем все как надо. НО после нажатия на кнопку «Загрузить еще» и появления еще 14 картинок клик по ним показывает картинку открытую через браузер, т.е. чтобы попасть на сайт нужно жать кнопку «со стрелкой назад». При этом если оставить пагинацию с номерами страниц то все работает как надо.
Вот код:
[[!pdoPage?
&parents=`19`
&element=`getImageList`
&tvname=`works`
&limit=`14`
&tpl=`tplWorksInGallery`
]]
[[!+page.nav]]
И сам код чанка tplWorksInGallery:
Буду благодарен за ваши высказывания куда смотреть.
Вот код:
[[!pdoPage?
&parents=`19`
&element=`getImageList`
&tvname=`works`
&limit=`14`
&tpl=`tplWorksInGallery`
]]
[[!+page.nav]]
И сам код чанка tplWorksInGallery:
Буду благодарен за ваши высказывания куда смотреть.