// при создании нового отзыва отсылать письмо 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
|
|