Всем привет! Помогите, пожалуйста, разобраться начинающему разработчику.
Суть задачи - через событие CSubscription прописать добавление нового анонимного подписчика в битрикс при заполнении формы (без регистрации пользователя на сайте).
По аяксу отсылаю методом POST в php файл данные из формы.
Там уже есть событие CEvent::Send , которое в принципе отрабатывает и отправляет письмо. Но при попытке дописать туда событие для внесения подписчика оно не работает - подписчик не добавляется (отправка письма тем не менее работает).
Варианты как я уже пыталась вписать событие:
____________________________________________________________ __
В чем ошибка, почему у меня не срабатывает метод, что я не так делаю?
Подскажите, пожалуйста, кто может?
Суть задачи - через событие CSubscription прописать добавление нового анонимного подписчика в битрикс при заполнении формы (без регистрации пользователя на сайте).
По аяксу отсылаю методом POST в php файл данные из формы.
Там уже есть событие CEvent::Send , которое в принципе отрабатывает и отправляет письмо. Но при попытке дописать туда событие для внесения подписчика оно не работает - подписчик не добавляется (отправка письма тем не менее работает).
Варианты как я уже пыталась вписать событие:
| Код |
|---|
$arFields2 = Array( "USER_ID" => NULL, "FORMAT" => "html", "EMAIL" => $email, "ACTIVE" => "Y", "RUB_ID" => "2" ); CSubscription::Add($arFields2, SITE_ID); |
____________________________________________________________
| Код |
|---|
$RUB_ID = array(1,2,3,4)
if(!is_array($RUB_ID) || count($RUB_ID) == 0) $strWarning .= "There must be at least one category."."<br>";
if($strWarning == "")
{
$arFields = Array(
"USER_ID" => ($USER->IsAuthorized()? $USER->GetID():false),
"FORMAT" => ($FORMAT <> "html"? "text":"html"),
"EMAIL" => $email, //переменная емейл задана выше
"ACTIVE" => "Y",
"RUB_ID" => $RUB_ID
);
$subscr = new CSubscription;
//can add without authorization
$ID = $subscr->Add($arFields);
if($ID>0)
CSubscription::Authorize($ID);
else
$strWarning .= "Error adding subscription: ".$subscr->LAST_ERROR."<br>";
}
|
| Код |
|---|
if(!is_array($RUB_ID) || count($RUB_ID) == 0) $strWarning .= "There must be at least one category."."<br>";
if($strWarning == "")
{
$arFields = Array(
"USER_ID" => NULL,
"FORMAT" => "html",
"EMAIL" => $email, //переменная емейл задана выше
"ACTIVE" => "Y",
"RUB_ID" => 2
);
$subscr = new CSubscription;
//can add without authorization
$ID = $subscr->Add($arFields);
if($ID>0)
CSubscription::Authorize($ID);
else
$strWarning .= "Error adding subscription: ".$subscr->LAST_ERROR."<br>";
}
|
| Код |
|---|
$arFields = Array( "FORMAT" => "html", "EMAIL" => $email, //переменная емейл задана выше "ACTIVE" => "Y", "RUB_ID" => 2 ); CSubscription::Add($arFields2, SITE_ID); |
В чем ошибка, почему у меня не срабатывает метод, что я не так делаю?
Подскажите, пожалуйста, кто может?