Current Path : /var/www/html/clients/nkpgkx11.e-nk.ru/bitrix/modules/citrus.tszhdemo/ |
Current File : /var/www/html/clients/nkpgkx11.e-nk.ru/bitrix/modules/citrus.tszhdemo/public.php |
<? IncludeModuleLangFile(__FILE__); class CTszhDemoPublicHelper { // ñîçäàåì îáðàáîò÷èê ñîáûòèÿ "OnAfterIBlockElementAdd" function OnAfterIBlockElementAddHandler(&$arFields) { global $APPLICATION; $questionsIBlockID = COption::GetOptionInt('citrus.tszhdemo', "questions.iblock", 0); if ($questionsIBlockID > 0 && $arFields['IBLOCK_ID'] == $questionsIBlockID && $arFields['ID'] > 0) { $rsElement = CIBlockElement::GetList( Array(), Array("IBLOCK_ID" => $arFields['IBLOCK_ID'], "ID" => $arFields['ID']) ); if ($obElement = $rsElement->GetNextElement()) { $arElement = $obElement->GetFields(); $arProperties = $obElement->GetProperties(); $arEvent = Array( "NAME" => $arElement['NAME'], "ADDRESS" => $arProperties['author_address']['VALUE'], "PHONE" => $arProperties['author_phone']['VALUE'], "MAIL" => $arProperties['author_email']['VALUE'], "TEXT" => $arElement['PREVIEW_TEXT_TYPE'] != 'text' ? HTMLToTxt($arElement['~PREVIEW_TEXT']) : $arElement['PREVIEW_TEXT'], "ELEMENT_ID" => IntVal($arElement['ID']), "IBLOCK_TYPE" => $arElement['IBLOCK_TYPE_ID'], "IBLOCK_ID" => IntVal($arElement["IBLOCK_ID"]), "SECTION_ID" => IntVal($arElement['IBLOCK_SECTION_ID']) ); CEvent::Send("QUESTIONS_FORM", SITE_ID, $arEvent); } } } // ñîçäàåì îáðàáîò÷èê ñîáûòèÿ "OnAfterIBlockElementUpdate" function OnAfterIBlockElementUpdateHandler(&$arFields) { global $APPLICATION; $questionsIBlockID = COption::GetOptionInt('citrus.tszhdemo', "questions.iblock", 0); if ($questionsIBlockID > 0 && $arFields['IBLOCK_ID'] == $questionsIBlockID && $arFields['ID'] > 0) { $rsElement = CIBlockElement::GetByID($arFields['ID']); if ($obElement = $rsElement->GetNextElement()) { $arElement = $obElement->GetFields(); $arProperties = $obElement->GetProperties(); $arEvent = Array( "NAME" => $arElement['NAME'], "ADDRESS" => $arProperties['author_address']['VALUE'], "PHONE" => $arProperties['author_phone']['VALUE'], "MAIL" => trim($arProperties['author_email']['VALUE']), "TEXT" => $arElement['PREVIEW_TEXT_TYPE'] != 'text' ? HTMLToTxt($arElement['PREVIEW_TEXT']) : $arElement['PREVIEW_TEXT'], "ANSWER" => trim($arElement['DETAIL_TEXT_TYPE'] != 'text' ? HTMLToTxt($arElement['DETAIL_TEXT']) : $arElement['DETAIL_TEXT']), "ANSWER_AUTHOR" => strlen($arProperties['answer_author']['VALUE']) > 0 ? $arProperties['answer_author']['VALUE'] : '—', "ELEMENT_ID" => IntVal($arElement['ID']), "IBLOCK_TYPE" => $arElement['IBLOCK_TYPE_ID'], "IBLOCK_ID" => IntVal($arElement["IBLOCK_ID"]), "SECTION_ID" => IntVal($arElement['IBLOCK_SECTION_ID']) ); // îòïðàâèòü óâåäîìëåíèå, â ñëó÷àå, åñëè áûë çàïîëíåí îòâåò è E-Mail àâòîðà âîïðîñà if (md5($arEvent['ANSWER']) != $arProperties['md5_answer_sent']['VALUE'] && strlen($arEvent['ANSWER']) > 0 && strlen($arEvent['MAIL']) > 0 && check_email($arEvent['MAIL'])) { CEvent::Send("QUESTIONS_ANSWER", SITE_ID, $arEvent); CIBlockElement::SetPropertyValueCode($arElement['ID'], 'md5_answer_sent', md5($arEvent['ANSWER'])); } } } } } ?>