Дмитрий Кондаков

Дмитрий Кондаков

С нами с 28 февраля 2013; Место в рейтинге пользователей: #265
charset
15 декабря 2016, 22:16
1
0
Все, разобрался. Всем спасибо кто откликнулся на мой вопрос.

Вывел через [[!msGetOrder? &tpl=`my.tpl.success`]]
Роман Садоян
19 октября 2016, 21:15
4
0
Ага, понял, в общем вот такой код у меня работает:

switch ($modx->event->name) {

  case 'msOnSubmitOrder':
    $orderData = $order->get();
    $status = $order->ms2->cart->status();
// Здесь я получаю минимальную стоимость из системной настройки
    $mincost = $modx->getOption('ms2_payment_rsb_mincost');
    if(!$mincost){
      $mincost = 3000;
    }
    if($status['total_cost'] < $mincost)
    {
      $message = "Минимальная сумма для подачи заявки равна: ".$mincost;
      $data = array('success' => false, 'message' => $message);
      return $modx->event->output($message);
    }
}
Сейчас уже не вспомню зачем я записываю в $data такой массив.
Но minishop подхватывает это уведомление и выводит ошибку, при этом форма не отправляется.
Fi1osof
10 сентября 2016, 20:27
1
0
Выкатил свежую версию 1.6.0-beta. Пофиксил косяк с установкой и добавил поддержку минишопа (стандартные поля price, old_price, weight, article) выгружаются и обновляются из коробки.
Вообще надо будет добавить возможность в настройках перечислять выгружаемые колонки, но пока не нарыли функцию получения наименования колонки в Экселе по порядковому номеру, но или нароем все-таки, или сами напишем. Пока же наглядный кейс как не сложно добавить в выгрузку дополнительные колонки, включая дополнительные опции товаров:
Добавляем кастомный процессор экспорта: joxi.ru/brRDO4pfQXDZN2
Там переопределяем метод и добавляем несколько строчек:
joxi.ru/KAgK9pXIglDBPA
joxi.ru/LmGVQx0uR6GX0r
Владимир
26 августа 2016, 13:06
1
+2
Use Resizer
phpthumbof.use_resizer — да, включите в системных настойках.
И я бы phpThumbOn поменял на pThumb, но это уже дело вкуса.
PS я вернулся на 2.5.0. но в 2.5.1 со включением ресайзера проблема превьюшек решилась, а вот наложение водяного знака- нет.
Павел Романов
24 июля 2016, 11:20
1
+3
Парсер MODX работает таким образом, что сначала рендерит чанки, TV, сниппеты, в общем, всё, что есть на странице, а только потом выполняет условия и оставляет нужное.
Соответственно, если Вы делаете так:
[[*tv:!empty=`[[$chunk]]`]]
то MODX сначала выполнит все, что в чанке, а только потом решит выводить его на страницу или нет.
В любом случае ресурсы уже потрачены. А если таких условий в шаблоне несколько. то тромоза все более и более ощутимы.

Если же сделать так:
[[$[[*tv:!empty=`chunk`]]]]
то MODX отрендерит просто текст «chunk» и потом, если условие выполнено, оставит его, а тут уже получится тег, который обработается:
[[$chunk]]

В случае невыполнения условия выведется просто
[[$]]

Fenom же работает по-другому. Он изначально рендерит только то, что соответствует условию.
В Вашем случае будет так:
{if $_modx->resource.tags != ''}
    {$_modx->runSnippet('pdoResources', [
    'parents' => 2,
    'limit' => 5,
    'tpl' => 'tplArticleSim'
    ])}
{/if}

Ну или так, если угодно:
{if $_modx->resource.tags != ''}
    {$_modx->getChunk('similarArticles')}
{/if}

Или вообще так ):
{if $_modx->resource.tags != ''}
    [[pdoResources?
    &parents=`2`
    &limit=`5`
    &tpl=`tplArticleSim`
    ]]
{/if}
Максим Кузнецов
29 июня 2016, 16:05
7
+2
'where' => '{
	"id:!=": '~ $_modx->resource.id ~'
}'
Василий Столейков
22 июня 2016, 13:34
3
+1
Для себя на память выложу решение на Fenom чтобы снова не искать так долго:
'where' => '{ "id:IN":['~$comment_childrens~'] }',
Виталий Серый
08 июня 2016, 00:58
7
+3
Можно попробовать обойтись средствами Fenom без getImageList.
{set $rows = json_decode($_modx->resource.tv_product_main_gallery, true)}
{foreach $rows as $row}
    {$row.image}
{/foreach}
Дмитрий
07 мая 2016, 14:42
1
+1
Как оказалось, еще проще:
<?php
if ($modx->event->name == 'OnDocFormSave' && $mode == modSystemEvent::MODE_NEW) {
    if ($resource->get('template') == 3) {
        $resource->set('source', 4);
    }
}
Vbif
27 апреля 2016, 21:22
2
0
В итоге решилось так. Плагин с кодом:
<?php
if ($modx->event->name = 'msOnBeforeAddToCart' || $modx->event->name = 'msOnBeforeChangeInCart') {
	$values = & $modx->event->returnedValues;
	if ($values['count'] < 1) {
		$values['count'] = 1;
	}
}
и события msOnBeforeAddToCart и msOnBeforeChangeInCart.