Добрый день. Прошу разъяснить мне вопрос, возможно кто то сталкивался. Как вы наверное уже знаете, события веб-форм перехватываются в файле init.php.
У меня есть простая веб форма, на основании которой я пытаюсь создать обращение в модуле "техподдрежка".
Алгоритм такой: Объявляем ожидатель события отправки формы, проверяем, наша ли форма, выбираем данные на основе созданного ответа формы, создаем обращение.
Тут есть момент который меня слегка запутал. Для начала я просто вызывал из init.php CModule::IncludeModule("support" ); затем $NEW_TICKET_ID = CTicket::Set($arFields, $MESSAGE_ID, $TICKET_ID, "N" );, где $arFields заполнен случайными данными. Все ОК, заявка появляется, идем дальше, нужно получить данные формы, хорошо используем класс CFormResult::GetDataByID, получаем данные и тут я немного застопорился.
Полсе вызова CFormResult::GetDataByID, CTicket::Set отказывается выполняться, ни с ручными данными, ни с переменными.
У меня есть простая веб форма, на основании которой я пытаюсь создать обращение в модуле "техподдрежка".
Алгоритм такой: Объявляем ожидатель события отправки формы, проверяем, наша ли форма, выбираем данные на основе созданного ответа формы, создаем обращение.
Тут есть момент который меня слегка запутал. Для начала я просто вызывал из init.php CModule::IncludeModule("support" ); затем $NEW_TICKET_ID = CTicket::Set($arFields, $MESSAGE_ID, $TICKET_ID, "N" );, где $arFields заполнен случайными данными. Все ОК, заявка появляется, идем дальше, нужно получить данные формы, хорошо используем класс CFormResult::GetDataByID, получаем данные и тут я немного застопорился.
Полсе вызова CFormResult::GetDataByID, CTicket::Set отказывается выполняться, ни с ручными данными, ни с переменными.
| Код |
|---|
<?php
AddEventHandler('form', 'onAfterResultAdd', 'my_onAfterResultAddUpdate');
function my_onAfterResultAddUpdate($WEB_FORM_ID, $RESULT_ID)
{
if ($WEB_FORM_ID == 6)
{
$arAnswer = CFormResult::GetDataByID(
$RESULT_ID,
array(),
$arResult,
$arAnswer2
);
CModule::IncludeModule("support");
$arFields = array(
"TITLE" => "hello",
"MESSAGE" => "world",
"OWNER_USER_ID" => 2667
);
$NEW_TICKET_ID = CTicket::Set($arFields, $MESSAGE_ID, $TICKET_ID, "N");
echo "MESSAGE_ID = ".$MESSAGE_ID;
}
}
?>
|