Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
как узнать id заказа (корзины) с которой работает покупатель

Автор atachРаздел Custom макросы

Ответов: 6
Просмотров: 2801
Последний ответ 22 Август 2013, 22:57:57
от atach
Почему-то не работает edit-in-place для одного из полей

Автор VeinardРаздел Шаблоны XSLT

Ответов: 2
Просмотров: 1395
Последний ответ 16 Сентябрь 2014, 03:38:31
от Veinard
Опции товара - почему не работает код взятый с вики?

Автор CanektРаздел Шаблоны XSLT

Ответов: 0
Просмотров: 69
Последний ответ 09 Август 2017, 12:07:14
от Canekt
Скрипт не работает при подключении Edit-in-Place

Автор diii3Раздел Шаблоны XSLT

Ответов: 3
Просмотров: 2169
Последний ответ 20 Март 2012, 12:01:52
от diii3
Вызов шаблона работает только под админом

Автор idu.kuruРаздел Шаблоны XSLT

Ответов: 2
Просмотров: 1128
Последний ответ 22 Март 2015, 18:34:19
от admin

0 Пользователей и 1 Гость просматривают эту тему.

*

htmllancer

  • *
  • 7
  • +0/-0
    • Просмотр профиля
Доброго,

никак не могу заставить работать umiMail в кастомных макросах. В отдельном файле - c подключением standalone.php все работает нормально. Как только пы таюсь тоже самое сделать в custom.php (без подключения standalone) письма перестают ходить.

Если делать в custom отправку почты напрямую, без umiMail то почта тоже ходит нормально.
Что я не так делаю?

$oMail = new umiMail();
var_dump($oMail);
ошибка
« Последнее редактирование: 28 Март 2017, 14:25:26 от htmllancer »

*

aghigay

  • *****
  • 602
  • +28/-3
  • Просто пытаюсь помочь. Иногда пинком
    • Просмотр профиля
    • umicms.me
Re: umiMail не работает в custom макросах
« Ответ #1 : 28 Март 2017, 14:45:16 »
Самый простой способ понять это - увидеть как это реально работает.
Откройте файл /classes/modules/content/__events.php и найдите там umiMail

Вы увидите, что для отправки необходимо:
1. заполнить нужные поля
2. отправить.

В вашем примере нет ни того, ни другого.
Вот пример кода:
$mail_message = new umiMail();
$from = $regedit->getVal("//settings/email_from");
$mail_message->setFrom($from);
$mail_message->setPriorityLevel("high");
$mail_message->setSubject(getLabel('label-notification-mail-header'));
list ($body) = def_module::loadTemplatesForMail("mail/notify", "body");
$block['notify_header'] = getLabel('label-notification-mail-header');
$block['page_header'] =  $ePage->getName();
$block['publish_comments'] = $publishComments;
$domain = domainsCollection::getInstance()->getDomain($ePage->getDomainId());
$page_host = getSelectedServerProtocol() . "://".$domain->getHost().umiHierarchy::getInstance()->getPathById($page_id);
$block['page_link'] = $page_host;
$mail_html = def_module::parseTemplateForMail($body, $block, $page_id);
$mail_message->addRecipient($user_email);
$mail_message->setContent($mail_html);

$mail_message->commit();
$mail_message->send();
Мой блог http://umicms.me

*

htmllancer

  • *
  • 7
  • +0/-0
    • Просмотр профиля
Re: umiMail не работает в custom макросах
« Ответ #2 : 28 Март 2017, 15:05:12 »
Не много не поняли Вы меня, у меня в custom.php

$mail = new umiMail();
var_dump($mail);

выдает ошибку а не umiMail. Должно быть что-то типа
object(umiMail)#4 (24) { ["template":"umiMail":private]=> string(7) "default" ["is_commited":"umiMail":private]=>

*

aghigay

  • *****
  • 602
  • +28/-3
  • Просто пытаюсь помочь. Иногда пинком
    • Просмотр профиля
    • umicms.me
Re: umiMail не работает в custom макросах
« Ответ #3 : 28 Март 2017, 17:14:17 »
Проверяйте, правильно ли обозначен класс, правильно ли обозначен метод внутри класса. Проверяйте наличие umiMail (может у вас старая UMI и в ней как-то иначе реализована отправка писем).
Мой блог http://umicms.me

*

htmllancer

  • *
  • 7
  • +0/-0
    • Просмотр профиля
Re: umiMail не работает в custom макросах
« Ответ #4 : 28 Март 2017, 17:25:05 »
Проверяйте, правильно ли обозначен класс, правильно ли обозначен метод внутри класса. Проверяйте наличие umiMail (может у вас старая UMI и в ней как-то иначе реализована отправка писем).

<?php

class custom extends def_module
{
public function sender($method_name, $args) {
             $oMail = new umiMail();
             var_dump($oMail)
        }
.....

*

htmllancer

  • *
  • 7
  • +0/-0
    • Просмотр профиля
Re: umiMail не работает в custom макросах
« Ответ #5 : 28 Март 2017, 17:26:05 »
Проверяйте, правильно ли обозначен класс, правильно ли обозначен метод внутри класса. Проверяйте наличие umiMail (может у вас старая UMI и в ней как-то иначе реализована отправка писем).

Версия последняя lite

<?php

class custom extends def_module
{
public function sender($method_name, $args) {
             $oMail = new umiMail();
             var_dump($oMail)
        }
.....