Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Подписка на тему форума

00 голосов
9
Как сделать чтоб пользователь при регистрации автоматически регистрировался на подписку новых тем в определённой теме форума?
спросил 11 Март, 13 от 0ksana (240 баллов)

9 Ответы

00 голосов
В init.php прописываем обработчик события OnAfterUserRegister, где вызываем функцию ForumSubscribeNewMessages
ответил 11 Март, 13 от LiveToWIn (360 баллов)
00 голосов
После регистрации у пользователя нет подписки на тему :(

Посмотрите пожалуйста код:

<?
AddEventHandler("main", "OnAfterUserRegister", "MyOnAfterUserRegisterHandler");
function MyOnAfterUserRegisterHandler(&$arFields)
{

if($arFields["USER_ID"]>0)
{
$a = new CForumSubscribe;
$a->Add(array(
"USER_ID" => $arFields["USER_ID"],
"FORUM_ID" => 3,
"TOPIC_ID" => 0,
"SITE_ID" => 1));


}
return $arFields;
}
?>
ответил 17 Март, 13 от 0ksana (240 баллов)
00 голосов
Ну что мне кто-то ответит?????? :|
ответил 25 Апр, 13 от 0ksana (240 баллов)
00 голосов
Если это поможет вот такая ошибка выскакивает

Fatal error: Class 'CForumSubscribe' not found in C:\Program Files\Bitrix Environment\www\bitrix\php_interface\init.php on line 10
ответил 19 Авг, 13 от 0ksana (240 баллов)
00 голосов
Цитата
tradzt@gmail.com пишет:
Если это поможет вот такая ошибка выскакивает

Код
CModule::IncludeModule("forum")
ответил 18 Ноя, 13 от NitroGeN (2,840 баллов)
00 голосов
Спасибо, это помогло. Но у меня возникла еще одна проблема я пишу этот код:
Код
<?

CModule::IncludeModule("forum");
AddEventHandler("main", "OnAfterUserRegister", "MyOnAfterUserRegisterHandler");
function MyOnAfterUserRegisterHandler(&$arFields)
    {
        
        if($arFields["USER_ID"]>0)
        {
           $a = new CForumSubscribe;
          $a->Add(array( 
   "USER_ID" => $arFields["USER_ID"], 
   "FORUM_ID" => 3, 
   "TOPIC_ID" => Null, 
   "SITE_ID" => "s1"));


        }
        return $arFields;
    }

?>

на 9-й(более старой) версии он не работает :(
вообще ничего не происходит :( :(
Напишите плз в чём может быть проблема!!!
ответил 27 Фев, 14 от 0ksana (240 баллов)
00 голосов
Программа не выполняется после обработчика событий OnAfterUserRegister. Может в Битрикс 9.0 она по другому называется???????Помогите пожалуйста целую ночь не могу исправить ошибку :evil: :(
ответил 19 Июнь, 14 от 0ksana (240 баллов)
00 голосов
Ну кто-то знает что это за проблема????? :(
И если кто может протестируйте у себя и отпишите или работает.Буду очень благодарен
ответил 18 Окт, 14 от 0ksana (240 баллов)
00 голосов
Пробовал так но тоже ни чего не происходит
Код
<?
CModule::IncludeModule("forum");
AddEventHandler("main", "OnAfterUserRegister", "MyOnAfterUserRegisterHandler");
function MyOnAfterUserRegisterHandler(&$arFields)
    {
    AddMessage2Log("User add ID=".$arFields["USER_ID"]);
    CForumSubscribe::Add(array(
   "USER_ID" => $arFields["USER_ID"],
   "FORUM_ID" => 23,
   "TOPIC_ID" => Null,
   "SITE_ID" => "s1"));
    }
?>
ответил 18 Фев, 15 от 0ksana (240 баллов)

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

0 голосов
3 ответов
спросил 18 Фев, 14 от fdsc (180 баллов)
0 голосов
5 ответов
0 голосов
2 ответов
спросил 08 Авг, 13 от Eliga (360 баллов)
0 голосов
6 ответов
спросил 22 Июль, 13 от JIauJIa (280 баллов)
0 голосов
1 ответ
спросил 07 Июнь, 13 от VitaliyKR (360 баллов)