mspReceiptAccount как добавить свой шаблон и автоматически отправить письмо при смене статуса
Тут написано, что это за зверь.
Я напишу как создать свой шаблон.
Может показаться, что для этого достаточно зайти в меню компонента и создать там новый элемент. Однако уже там видно что требуется указать класс-обработчик, поскольку под мои задачи подходил стандартный я его просто скопировал и положил рядом со стандартными в папку core/components/mspreceiptaccount/model/payments/. И казалось бы все, но нет.
Если посмотреть в логи, там будет написано что не найден какой-то класс и будет написано его название. Так сходу непонятно что это за класс и где он должен быть, но я разгадал эту загадку))). Копируем название класса, которое есть в логах и создаем вот такой файл
Всё, теперь можно создавать свой шаблон, например для акта выполненных работ.
И на закуску плагин для отправки этого самого акта выполненных работ на почту клиенту
Я напишу как создать свой шаблон.
Может показаться, что для этого достаточно зайти в меню компонента и создать там новый элемент. Однако уже там видно что требуется указать класс-обработчик, поскольку под мои задачи подходил стандартный я его просто скопировал и положил рядом со стандартными в папку core/components/mspreceiptaccount/model/payments/. И казалось бы все, но нет.
Если посмотреть в логи, там будет написано что не найден какой-то класс и будет написано его название. Так сходу непонятно что это за класс и где он должен быть, но я разгадал эту загадку))). Копируем название класса, которое есть в логах и создаем вот такой файл
core/components/mspreceiptaccount/custom/item/receiptaccountact.class.php
, я туда скопировал код из соседнего класса core/components/mspreceiptaccount/custom/item/receiptaccountsh.class.php
. Всё, теперь можно создавать свой шаблон, например для акта выполненных работ.
И на закуску плагин для отправки этого самого акта выполненных работ на почту клиенту
<?php
switch ($modx->event->name){
case 'msOnChangeOrderStatus':
if($status == 2){
$modx->runProcessor(
'web/orders/send',
array('order_id' => $order->get('id'), 'to' => 'user', 'class_handler' => 'ReceiptAccountAct'),
array('processors_path' =>$modx->getOption('core_path') . 'components/mspreceiptaccount/processors/')
);
}
break;
}
Надеюсь, кому-нибудь эта информация пригодится.
Поблагодарить автора
Отправить деньги
Комментарии: 4
У меня например Error `core/model/modx/processors/web/orders/send.php does not exist; Array()`, так как нет в процессорах 'web/orders/send'
Делаю выставить счёт в msProfile получаю {«success»:true,«message»:"",«data»:{«redirect»:«https:\/\/сайт.ru\/?msorder=40»}} виснет из-за fenom, а отключить не могу, так как нужен всё на нём построено
Делаю выставить счёт в msProfile получаю {«success»:true,«message»:"",«data»:{«redirect»:«https:\/\/сайт.ru\/?msorder=40»}} виснет из-за fenom, а отключить не могу, так как нужен всё на нём построено
У меня например Error `core/model/modx/processors/web/orders/send.php does not exist; Array()`Это ядро modx, не уверен что там должен быть какой-либо процессор для отправки каких-то заказов, вероятно ты неверно указал путь к процессору.
виснет из-за fenom, а отключить не могуА каким образом у тебя ответ от сервера попадает на страницу как есть?
Ну и в целом мне не очень понятно какое отношение твоё сообщение имеет к чути заметки?
Нет, я сделал по другому, всё работает)) В целом просто попробовал через закуску сделать, но не вышло) А так всё гуд.
Хорошо когда всё работает)))
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.