// при создании нового отзыва отсылать письмо
AddEventHandler('iblock', 'OnAfterIBlockElementAdd', 'IBElementCreateAfterHandler');
function IBElementCreateAfterHandler(&$arFields) {
// при создании новоя заявки отошлем человеку письмо
if($arFields['IBLOCK_ID'] == 6) {
$EVENT_TYPE = 'ADD_IBLOCK_REQUEST'; // тип почтового шаблона
$arMailFields['ID'] = $arFields['ID'];
$arMailFields['IBLOCK_ID'] = $arFields['IBLOCK_ID'];
$arMailFields['NAME'] = $arFields['NAME'];
$arMailFields['PREVIEW_TEXT'] = $arFields['PREVIEW_TEXT'];
foreach($arFields['PROPERTY_VALUES'] as $key => $value) {
if(is_numeric($key)) {
$res = CIBlockElement::GetProperty($arFields['IBLOCK_ID'], $arFields['ID'], "sort", "asc", array("ID" => $key));
}
else {
$res = CIBlockElement::GetProperty($arFields['IBLOCK_ID'], $arFields['ID'], "sort", "asc", array("CODE" => $key));
}
while ($ob = $res->GetNext())
{
$ValueProper = $ob;
}
// если это привязанные элементы получим их
if($ValueProper['PROPERTY_TYPE'] == 'E') {
if(is_array($arFields['PROPERTY_VALUES'][$ValueProper['ID']])){
$properElement = $arFields['PROPERTY_VALUES'][$ValueProper['ID']];
}
else {
$properElement = array($arFields['PROPERTY_VALUES'][$ValueProper['ID']]);
}
$mailListElement = '';
$arSelect = Array("ID", "NAME");
$arFilter = Array("ID"=> $properElement);
$respro = CIBlockElement::GetList(Array(), $arFilter, false, false, $arSelect);
while($arrproRes = $respro->Fetch())
{
$mailListElement .= $arrproRes['NAME'].', ' ;
}
$arMailFields['PROPERTY_'.$ValueProper['CODE']] = $mailListElement;
}
elseif($ValueProper['PROPERTY_TYPE'] == 'S'){
$arMailFields['PROPERTY_'.$ValueProper['CODE']] = $ValueProper['VALUE'];
}
else {
$arMailFields[$ValueProper['CODE']] = $ValueProper['VALUE'];
if(!empty($ValueProper['VALUE_ENUM'])) {
$arMailFields['PROPERTY_'.$ValueProper['CODE']] = $ValueProper['VALUE_ENUM'];
}
}
}
CEvent::Send($EVENT_TYPE, SITE_ID, $arMailFields);
}
}
Опубликовано: 24 марта 2013
|
|
|