Василий Наумкин

Василий Наумкин

С нами с 08 декабря 2012; Место в рейтинге пользователей: #1
Василий Наумкин
17 октября 2013, 13:02
0
В MS2 сейчас ошибка, что email производителя не сохраняется — ты наверное это уже поправил?

Тебе нужно написать мелкий плагин, на событие msOnCreateOrder, примерный код:
<?php
if ($modx->event->name != 'msOnCreateOrder') {return;}

$ordered_products = $order->getMany('Products');
foreach ($ordered_products as $ordered_product) {
	if ($product = $ordered_product->getOne('Product')) {
		if ($vendor = $product->getOne('Vendor')) {
			$email = $vendor->get('email');
			if (!empty($email)) {
				// Тут подключаем modMail и шлём письмо.
			}
		}
	}
}
Василий Наумкин
17 октября 2013, 11:46
0
Там еще смотри какая тонкость: нужно ставить атрибут checked для чекбоксов, а потом делать форме submit().

Иначе, если ты будет кликать на каждый чекбокс — будет сразу отправка формы, и для группы из 5 пунктов получится 5 запросов, что совсем не айс.
Василий Наумкин
17 октября 2013, 11:34
0
Почему нет?

Нужно добавить такой чекбокс в чанк оформления группы и написать обработку для него на javascript.
Василий Наумкин
17 октября 2013, 11:33
0
Коля, я Evolution не видел уже пару лет.

Но в коде сразу заметно, что идет работа с объектами, которых в Evo просто нет.
Василий Наумкин
16 октября 2013, 22:14
0
А с сервера тs возвращаешь json массив, в котором есть ключ success = 1?

Именно его ожидает увидеть javascript.
Василий Наумкин
16 октября 2013, 19:20
0
Если не трогал настройки почты в админке — проблема однозначно в хостинге.
Василий Наумкин
16 октября 2013, 16:50
0
Имя автора на момент создания комментария.
Можно выводить его в чанке (плейсхолдер, кажется, [[+author]]), но по умолчанию выводится имя юзера из его свойств путем присоединения таблицы modx_user_attributes при выборке.

По большому счету, это поле — тяжелое наследие компонента Quip, с которым я пытался подружить Tickets изначально.

Id автора менять вообще не понятно зачем.
Василий Наумкин
16 октября 2013, 16:00
0
Потому что менять нужно createdby, а не user — этого нельзя сделать из админки.
Василий Наумкин
16 октября 2013, 14:16
0
Нет, не надо.
Этот параметр принимают почти все мои сниппеты, а в JSON нет ничего сложного: скобочки да ковычки.

Итого, ответ на твой вопрос, при запуске из страницы сайта:
[[!pdoUsers?
	&where=`{"username:LIKE":"%petr%"}`
]]

Через API MODX
echo $modx->runSnippet('pdoUsers', array(
	'where' => '{"username:LIKE":"%petr%"}'
));

В общем, дело твоё.
Василий Наумкин
16 октября 2013, 13:44
0
Куда можно копать, если не отправляются письма?

0 Смотреть лог ошибок сервера
1. Проверять отправку писем с сайта, советую компонент QuickEmail с &debug=`1`.
2. Проверять что именно отправляется при смене заказа с MS2 — откуда ошибка в логе
Василий Наумкин
16 октября 2013, 13:27
0
Тоже вариант.

Хотя, проще было прочитать документацию и написать вот так:
&where=`{"username:LIKE":"%petr%"}`
Василий Наумкин
16 октября 2013, 08:22
0
Подумал еще раз, и решил, что если это не будет напряжно — то можно попробовать.
Василий Наумкин
16 октября 2013, 06:17
0
Это не троллинг, это обучение.

Чем меньше задаешь вопросов и больше учишься самостоятельно — тем больше знаешь.
Василий Наумкин
15 октября 2013, 18:51
0
Должно работать вот так:
&where=`["LCASE(product_name) RLIKE '[[:<:]]foo'"]`
Василий Наумкин
15 октября 2013, 18:06
0
Если перестановка в дереве ресурсов, то нужно сортировать по menuindex.
&sortby=`menuindex`

Можно сортировать и вручную:
&sortby=``
&resources=`5,4,9,3,16,28`
Василий Наумкин
15 октября 2013, 13:05
0
Давай!

Если что — в чанке товара корзины есть [[+price]], а есть и [[+cost]]. То есть: цена одного товара и стоимость добавленных.

Нужно брать цену товара и умножать на количество, заменяя стоимость в том же ряду.
Василий Наумкин
15 октября 2013, 12:59
0
Ну вот никому не нужно было.

Напиши, да выложи решение — я же не могу один работать за всех?
Василий Наумкин
15 октября 2013, 12:55
0
Я же говорю — плагин на событие загрузки страницы:

if ($modx->event->name == 'OnLoadWebDocument') {
	$modx->lexicon->load('sitelang');
}

Должно работать. Нужно только упаковать этот плагин в пакетик (ну и проверить, предварительно).
Василий Наумкин
15 октября 2013, 12:45
0
Никто не знает.

Придётся осваивать jQuery самостоятельно.