Был за основу взят пример кода
[CODE]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);
}
}
}[/CODE]
но этот код не подходит, так как если элемент по факту не был добавлен, то письмо все равно приходит.
И как бы его модифицировать, чтобы событие срабатывало, если запись в инфоблок действительно успешно попала?
И как добавить четыре свойства в письмо, типа строка (текст)?
И еще: чтобы 4 раза не плодить код - как добавить 2 почтовых ящика (нужно дублировать письма) и отслеживать два инфоблока 34 и 36.
Нижеследующая конструкция не срабатывает
[CODE]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);
}
}
}[/CODE]