Задать вопрос
@redesupar

Как правильно отправить доп свойства в почтовом шаблоне битрикс?

Создал свою форму для добавления записи в инфоблок, а оттуда уже через событие отправляю 2 письма, но они почему то пустые, как бы не пытался то через HTML_FIO то через просто #FIO#
#HTML_FIO# - ФИО<br>
 #EMAIL# - Почта<br>
 #HTML_CITY# - Регион<br>
 #ENTEPRISES# - Предприятие<br>
 #THEME# - Тема обращения<br>
#MSG# - Обращение

, помогите пожалуйста разобраться. Если все остальные шаблоны добавляются(все кроме id = 95)
они создавались через через компонент bitrix:iblock.element.add.form, то последнюю я просто создал с формой и через код
<? require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php");

/***   Получаем данные из формы отправленные скриптом ***/
// перед присвоением в переменную, проверяем есть ли данные
if (!empty($_POST["name"])) $name = $_POST['name'];
if (!empty($_POST["email"])) $email = $_POST['email'];
if (!empty($_POST["text"])) $text = $_POST['text'];
$city = $_POST['sel1'];
$enter = $_POST['sel2'];
$theme = $_POST['theme'];
/***   Проверка данных ***/
// валидация почты
$OK = false;
if($APPLICATION->CaptchaCheckCode($_POST["captcha_word"], $_POST["captcha_code"])) {
    $OK = true;
} else {
    $OK = false;
    $result['captcha_err'] = 'NO';
}

/***   Отправка данных ***/
if ($OK) {
   $OK = false;
   /** сохранение данных в инфоблок **/
   // подключаем модуль инфоблоков
   CModule::IncludeModule('iblock');
   // инициализируем
   $elem = new CIBlockElement;
   // создаем пустой массив и собираем в него поля
   $PROP = array();
   $PROP['FIO'] = $name;
   $PROP['EMAIL'] = $email;
   $PROP['MSG'] = $text;
   $PROP['CITY'] = $city;
   $PROP['ENTEPRISES'] = $enter;
   $PROP['THEME'] = $theme;


   // настройки
   $arLoadProductArray = Array(
      "MODIFIED_BY"    => 1,
      "IBLOCK_SECTION_ID" => false,    // элемент лежит в корне раздела
      "IBLOCK_ID"      => 95,           // Ид инфоблока
      "PROPERTY_VALUES"=> $PROP,       // массив со свойствами
      "NAME"           => $email,      // имя записи
      "ACTIVE"         => "Y",
   );
   // сохраняем
   $PRODUCT_ID = $elem->Add($arLoadProductArray);



    // отправка

    // если отправка успешна
    $result['error'] = "";
    $result['success'] = 'Сообщение отправлено';
} else {
    $result['error'] = 'Сообщение не отправлено';
}

/***   Возврат результата отправки ***/
header('Content-Type: application/json');
echo json_encode($result);


Сам вот обработчик отправки писем
// регистрируем обработчик
AddEventHandler("iblock", "OnAfterIBlockElementAdd", "Send_Mail_to");
    // создаем обработчик события "OnAfterIBlockElementAdd"
    function Send_Mail_to(&$arFields)
    {
		if($arFields['IBLOCK_ID'] == 90) {			
					
			if($arFields["ID"]>0) {
				//AddMessage2Log($arFields);
				//AddMessage2Log("123");
				$arEventFields = array(
					"company_name"                => $arFields["NAME"],
					"company_adr"                 => $arFields["PROPERTY_VALUES"]["469"],
					"company_phone"                 => $arFields["PROPERTY_VALUES"]["470"],					
					"company_email"                 => $arFields["PROPERTY_VALUES"]["471"],					
					"web_site"                 => $arFields["PROPERTY_VALUES"]["472"],
					
					"zapr_podderjka"                 => $arFields["PROPERTY_VALUES"]["473"],					
					"rez_proekt"                 => $arFields["PROPERTY_VALUES"]["474"],
					
					"opis_har"                 => $arFields["PROPERTY_VALUES"]["475"]["VALUE"]["TEXT"],					
					"obosnovanie"                 => $arFields["PROPERTY_VALUES"]["476"]["VALUE"]["TEXT"],
					"obzor"                 => $arFields["PROPERTY_VALUES"]["477"]["VALUE"]["TEXT"],
					"analogs"                 => $arFields["PROPERTY_VALUES"]["478"]["VALUE"]["TEXT"],
					"konkurenti"                 => $arFields["PROPERTY_VALUES"]["479"]["VALUE"]["TEXT"],
					"premka"                 => $arFields["PROPERTY_VALUES"]["480"]["VALUE"]["TEXT"],
					
					"naliche_potencial"                 => $arFields["PROPERTY_VALUES"]["481"],
					"plan_raspred"                 => $arFields["PROPERTY_VALUES"]["482"],
					"tekushiy_uroven"                 => $arFields["PROPERTY_VALUES"]["483"],
					"etaps"                 => $arFields["PROPERTY_VALUES"]["484"],
					"need_objem"                 => $arFields["PROPERTY_VALUES"]["485"],
					"objem_inv"                 => $arFields["PROPERTY_VALUES"]["486"],
					"opisnanie_ekon"                 => $arFields["PROPERTY_VALUES"]["487"],
					"prognoziruemiy_ek"                 => $arFields["PROPERTY_VALUES"]["488"],
					"prognoziruemiy_ek_osk"                 => $arFields["PROPERTY_VALUES"]["489"],
					"opis_har"                 => $arFields["PROPERTY_VALUES"]["469"],
					"srok"                 => $arFields["PROPERTY_VALUES"]["490"],
					"perechen"                 => $arFields["PROPERTY_VALUES"]["491"],
					"ruka"                 => $arFields["PROPERTY_VALUES"]["492"],	
					"avtor"                 => $arFields["PROPERTY_VALUES"]["493"],	
					"quanti"                 => $arFields["PROPERTY_VALUES"]["494"],	
					
				);
				CEvent::Send("ZAYAVKA_VENTURE", "s1", $arEventFields);				
			}

			else
				AddMessage2Log("Ошибка добавления записи (".$arFields["RESULT_MESSAGE"].").");
			
		}
		
		//Научно-технический совет
		if($arFields['IBLOCK_ID'] == 92) {			
					
			if($arFields["ID"]>0) {
				//AddMessage2Log($arFields);
				//AddMessage2Log("123");
				$arEventFields = array(
					"COMPANY_NAME"	 	=> $arFields["NAME"],
					"FULL_INFO"			=> $arFields["PROPERTY_VALUES"]["505"],
					"TEMA"				=> $arFields["PROPERTY_VALUES"]["506"],					
					"AKTUAL"			=> $arFields["PROPERTY_VALUES"]["507"],					
					"TSEL"				=> $arFields["PROPERTY_VALUES"]["508"],
					"ZADACHA"			=> $arFields["PROPERTY_VALUES"]["509"],			
					"KLUCH"				=> $arFields["PROPERTY_VALUES"]["510"],
					"PLAN"				=> $arFields["PROPERTY_VALUES"]["511"],
					"VOTE"				=> $arFields["PROPERTY_VALUES"]["512"],
					
				);
				CEvent::Send("ZAYAVKA_NTS", "s1", $arEventFields);				
			}

			else
				AddMessage2Log("Ошибка добавления записи (".$arFields["RESULT_MESSAGE"].").");
			
		}
		
		//Инновационное развитие
		if($arFields['IBLOCK_ID'] == 93) {			
					
			if($arFields["ID"]>0) {
				//AddMessage2Log($arFields);
				//AddMessage2Log("123");
				$arEventFields = array(
					"COMPANY_NAME"	 	=> $arFields["NAME"],
					"FIO_RUK"			=> $arFields["PROPERTY_VALUES"]["514"],
					"YUR_ADRES"			=> $arFields["PROPERTY_VALUES"]["515"],					
					"FAKT_ADRES"			=> $arFields["PROPERTY_VALUES"]["516"],					
					"FIO_CONT"				=> $arFields["PROPERTY_VALUES"]["517"],
					"PHONE"			=> $arFields["PROPERTY_VALUES"]["518"],			
					"EMAIL"				=> $arFields["PROPERTY_VALUES"]["519"],
					"SITE"				=> $arFields["PROPERTY_VALUES"]["520"],
					"PORTFOLIO"				=> $arFields["PROPERTY_VALUES"]["521"],
					"TSEL"				=> $arFields["PROPERTY_VALUES"]["522"],
					"SLUCHAY"				=> $arFields["PROPERTY_VALUES"]["523"],
					"NAIM_PROD"				=> $arFields["PROPERTY_VALUES"]["524"],
					"KONKRET"				=> $arFields["PROPERTY_VALUES"]["525"],
					"TRLS"				=> $arFields["PROPERTY_VALUES"]["526"],
					"LICENSE"				=> $arFields["PROPERTY_VALUES"]["527"],
					"NALIK"				=> $arFields["PROPERTY_VALUES"]["528"],
					"KOMPLIK"				=> $arFields["PROPERTY_VALUES"]["529"],
					"LVL_LOK"				=> $arFields["PROPERTY_VALUES"]["535"],					
					"RECOMEND"				=> $arFields["PROPERTY_VALUES"]["530"],
					"OPIT"				=> $arFields["PROPERTY_VALUES"]["531"],
					"BLIJAY"				=> $arFields["PROPERTY_VALUES"]["532"],		
					"OBSHIE"				=> $arFields["PROPERTY_VALUES"]["533"],
					"DOPINFO"				=> $arFields["PROPERTY_VALUES"]["534"],					
					
				);
				CEvent::Send("ZAYAVKA_INNOVATION", "s1", $arEventFields);				
			}

			else
				AddMessage2Log("Ошибка добавления записи (".$arFields["RESULT_MESSAGE"].").");
			
		}	
//Обращение к ГД
		if($arFields['IBLOCK_ID'] == 95) {			
					
			if($arFields["ID"]>0) {
				AddMessage2Log($arFields);
				//AddMessage2Log("123");
				$arEventFields = array(
				    "COMPANY_NAME"	 	=> $arFields["NAME"],
					"FIO"	 	=> $arFields["PROPERTY_VALUES"]["542"],
					"EMAIL"			=> $arFields["PROPERTY_VALUES"]["543"],
					"CITY"			=> $arFields["PROPERTY_VALUES"]["544"],					
					"ENTEPRISES"			=> $arFields["PROPERTY_VALUES"]["545"],					
					"THEME"				=> $arFields["PROPERTY_VALUES"]["546"],
					"MSG"			=> $arFields["PROPERTY_VALUES"]["547"],				
					
				);
				CEvent::Send("OBRASHENIE_GD", "s1", $arEventFields);			
                CEvent::Send("OBRATKA_OBRASHENIE_GD", "s1", $arEventFields);				
			}

			else
				AddMessage2Log("Ошибка добавления записи (".$arFields["RESULT_MESSAGE"].").");
			
		}		

    }


Если сделать через компонент bitrix:iblock.element.add.form то все поля работают, но мне надо именно через форму, как это можно сделать?
$arEventFields возвращает так
array (
'COMPANY_NAME' => 'dsdasd@mail.ru',
'FIO' => NULL,
'EMAIL' => NULL,
'CITY' => NULL,
'ENTEPRISES' => NULL,
'THEME' => NULL,
'MSG' => NULL,
)
  • Вопрос задан
  • 114 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@redesupar Автор вопроса
Надо было всего лишь правильно передавать поля, вместо ID отправлять имя поля
"COMPANY_NAME"	 	=> $arFields["NAME"],
					"FIO"	 	=> $arFields["PROPERTY_VALUES"]["FIO"],
					"EMAIL"			=> $arFields["PROPERTY_VALUES"]["EMAIL"],
					"CITY"			=> $arFields["PROPERTY_VALUES"]["CITY"],					
					"ENTEPRISES"			=> $arFields["PROPERTY_VALUES"]["ENTEPRISES"],					
					"THEME"				=> $arFields["PROPERTY_VALUES"]["THEME"],
					"MSG"			=> $arFields["PROPERTY_VALUES"]["MSG"],
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы