Александр

Александр

С нами с 10 февраля 2015; Место в рейтинге пользователей: #201
03 августа 2017, 16:53
0
в источнике файлов. Возможно адрес источника не подхватывается. Или делайте свой рендер, подставляя адрес источника, или меняйте источник от корня
03 августа 2017, 15:57
0
мета тег base url у Вас есть?
03 августа 2017, 13:19
+1
Как вариант и OnMODXInit. Но лишняя микронагрузка (смена опции) на каждую инициализацию? Может у него там запрос на определение города по ip на сторонний сервер. Зачем OnMODXInit если есть msOnChangeOrderStatus?
Всмысле зачем вызывать всегда, когда не нужно, если можно «когда нужно»? =)
03 августа 2017, 12:36
+2
echo $modx->getOption('ttest');
echo "< br >";
$modx->setOption('ttest', '999');
echo $modx->getOption('ttest');
Результат:
7
999
Тестировал код из консоли. При повторном выполнении — результат тотже.
Из чего следует, что опция проставляется только на время выполнения скрипта.

Логическим путем пошел в код ms2. Нам нужно куда-то вклиниться в процесс отправки писем.
Ближайший эвент перед отправкой писем: msOnChangeOrderStatus
Пишем плагин:
switch ($modx->event->name) {
    case 'msOnChangeOrderStatus':
        $modx->setOption('ms2_email_manager', 'Нужный email');
    break;
}
Итог:
Email менеджера подменился и письмо ушло на 'Нужный email'.
Настройка ms2_email_manager осталась неизменной
03 августа 2017, 11:53
0
А доска с маркерами есть? =)
03 августа 2017, 11:00
0
надеюсь все-таки через годик переберусь в питер =) Если новое место через год вдруг появится — пишите)
01 августа 2017, 16:53
+1
Блин, честно, продал бы почку, на эти деньги бы свалил из проклятой столицы на такие условия и отдавал бы душу за такую работу.
Жена последний курс МАРХИ заканчивает, завязаны на учебе вместе…
01 августа 2017, 16:46
+2
Уже предвижу цепочку…
Делаю тот самый модуль для б24 => начальству не нравится => следует увольнение => переезжаю в питер
А вообще если переезжать, то как Василий, ближе к морю. Я ему люто завидую (доброй завистью). Не каждый осмелится плюнуть на все, взять семью в охапку и свалить по-дальше.
01 августа 2017, 16:20
+2
Ох, жаль не в МСК…
отсутствие лэндингов и сайтов визиток;
Ребята, вы знаете, что предложить =)
20 июля 2017, 12:58
0
в ms2 есть 2 сниппета:
msOptions — для свойств товаров с возможностью выбора
msProductOptions — для статистических свойств товара
14 июля 2017, 11:32
+1
Так вот, браузеры запоминают такие запросы, и при повторном обновлении страницы идёт новый запрос на добавление товара.


Именно такое поведение и описано в вопросе
добавление последнего добавленного товара в корзину при обновлении страницы
Точнее может сказать только автор, поглядев у себя в консоль браузера.
Пардон, вчитался, про добавление последнего товара не обратил внимания.
14 июля 2017, 11:28
+1
ставите тип вывода «Текст», далее создаете плагин на событие OnDocFormSave:
switch ($modx->event->name) {
    case 'OnDocFormSave':
			$directory = 'images'; //Имя директории
			$tvName = 'image'; //Имя TV
			$tv = $modx->getObject('modTemplateVar', array('name' => $tvName));
			$curTv = $tv->getValue($resource);
			if (!preg_match('/'.$directory.'\//',$curTv)){
                              if(!$resource->setTVValue($tvName, $directory.'/'.$curTv)) {
                                 $modx->log(modX::LOG_LEVEL_ERROR, 'There was a problem setting the TV value.');
                              }
			}
        break;
    default:
        return;
}
При сохранении документа плагин проверяет встречается ли имя нужной директории в папке, если нет, то дописывает в ТВ нужную директорию. Кстати, даже после дописанной директории в админке превью также выводится.
13 июля 2017, 18:59
0
Если POST никто не отправляет, как параметры POST передадутся?
13 июля 2017, 18:54
+1
В настройках товара может быть только ОДИН родитель.
Поменяйте родителя на подкатегорию.
Modx не знает, из какой категории перешел посетитель. Может он вообще по прямой ссылке прошел.
13 июля 2017, 18:44
0
Создайте простой сниппет, который будет отлавливать GET параметры и создавать заказ на основе GET параметров. Отправляете с формы на страницу этого сниппета, сниппет создает заказ и предлагает его оплатить.
13 июля 2017, 18:39
+1
Вас не смущает, что я дал ссылку?
В чанк tpl.Tickets.sections.row смотрели?
Создайте свой чанк tpl, как Вам нужно.
13 июля 2017, 18:36
+1
P.S.
Я понимаю, что в чанках, вызовах сниппетов и т.д., я сам могу дописывать путь к [[*img_1]] или [[+img_1]], но это, мягко говоря, совсем не устраивает.
А вы пробовали не дописывать путь?
Логика MODX построена так, что при работе с TV система смотрит на
baseUrl: images/
у источника файлов.
После этого берет этот baseUrl и дописывает туда значение из img_1.
Текстовые редакторы в modx делают по-иному. При добавлении картинки в контент — также смотрят на baseUrl, но уже при выборе картинки дописывают baseUrl автоматом. В итоге при вставке того же TinyMCE у Вас вставится
images/other/test.jpg
автоматически.
13 июля 2017, 18:28
0
Загадка, если доступы в ЛС скините — могу посмотреть. Очень любопытно.
13 июля 2017, 18:16
0
Товар в ms2 — это обычный документ MODX.
Ставите свой плагин на OnBeforeDocFormSave.
В плагине проверяете:
if ($resource instanceof msProduct) {
Ваши действия с товаром
}