Был за основу взят пример кода
но этот код не подходит, так как если элемент по факту не был добавлен, то письмо все равно приходит.
И как бы его модифицировать, чтобы событие срабатывало, если запись в инфоблок действительно успешно попала?
И как добавить четыре свойства в письмо, типа строка (текст)?
И еще: чтобы 4 раза не плодить код - как добавить 2 почтовых ящика (нужно дублировать письма) и отслеживать два инфоблока 34 и 36.
Нижеследующая конструкция не срабатывает
Код |
---|
AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array("OnAfterArticleAdd", "OnAfterIBlockElementAddHandlerLast")); class OnAfterArticleAdd { function OnAfterIBlockElementAddHandlerLast(&$arFields) { if ($arFields["IBLOCK_ID"] == 34) { $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; $message = 'Текст отзыва: '.$arFields['PREVIEW_TEXT']; mail('test.mail@gmail.com', 'Добавлен отзыв на сайт', $message, $headers); } } } |
но этот код не подходит, так как если элемент по факту не был добавлен, то письмо все равно приходит.
И как бы его модифицировать, чтобы событие срабатывало, если запись в инфоблок действительно успешно попала?
И как добавить четыре свойства в письмо, типа строка (текст)?
И еще: чтобы 4 раза не плодить код - как добавить 2 почтовых ящика (нужно дублировать письма) и отслеживать два инфоблока 34 и 36.
Нижеследующая конструкция не срабатывает
Код |
---|
AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array("MyClassZ", "OnAfterIBlockElementAddHandlerLast")); class MyClassZ { // создаем обработчик события "OnAfterIBlockElementAdd" function OnAfterIBlockElementAddHandlerLast(&$arFields) { if($arFields["ID"]>0 && $arFields["IBLOCK_ID"] == 34) { $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; $message = 'Подробнее... ID Записи: '.$arFields['ID']; mail('test@ya.ru', 'Новая запись', $message, $headers); } } } AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array("MyClassZ1", "OnAfterIBlockElementAddHandlerLast")); class MyClassZ1 { // создаем обработчик события "OnAfterIBlockElementAdd" function OnAfterIBlockElementAddHandlerLast(&$arFields) { if($arFields["ID"]>0 && $arFields["IBLOCK_ID"] == 36) { $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; $message = 'Подробнее... ID Записи: '.$arFields['ID']; mail('test@test.ru', 'Новая запись', $message, $headers); } } } AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array("MyClassZ2", "OnAfterIBlockElementAddHandlerLast")); class MyClassZ2 { // создаем обработчик события "OnAfterIBlockElementAdd" function OnAfterIBlockElementAddHandlerLast(&$arFields) { if($arFields["ID"]>0 && $arFields["IBLOCK_ID"] == 34) { $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; $message = 'Подробнее на сайте ID Записи: '.$arFields['ID']; mail('test@ya.ru', 'Новая запись', $message, $headers); } } } AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array("MyClassZ3", "OnAfterIBlockElementAddHandlerLast")); class MyClassZ3 { // создаем обработчик события "OnAfterIBlockElementAdd" function OnAfterIBlockElementAddHandlerLast(&$arFields) { if($arFields["ID"]>0 && $arFields["IBLOCK_ID"] == 36) { $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; $message = 'Подробнее на сайте ID Записи: '.$arFields['ID']; mail('test@ya.ru', 'Новая запись', $message, $headers); } } } |