- Модуль: forum
- Путь к файлу: ~/bitrix/modules/forum/classes/mysql/forum_new.php
- Класс: CForumNew
- Вызов: CForumNew::Add
static function Add($arFields)
{
global $DB;
if (!CForumNew::CheckFields("ADD", $arFields))
return false;
/***************** Event onBeforeForumAdd **************************/
foreach (GetModuleEvents("forum", "onBeforeForumAdd", true) as $arEvent)
{
if (ExecuteModuleEventEx($arEvent, array(&$arFields)) === false)
return false;
}
/***************** /Event ******************************************/
if (empty($arFields))
return false;
$arInsert = $DB->PrepareInsert("b_forum", $arFields);
$strSql = "INSERT INTO b_forum(".$arInsert[0].") VALUES(".$arInsert[1].")";
$DB->Query($strSql, false, "File: ".__FILE__."
Line: ".__LINE__);
$ID = intval($DB->LastID());
if ($ID > 0)
{
foreach ($arFields["SITES"] as $key => $value)
{
$DB->Query("INSERT INTO b_forum2site (FORUM_ID, SITE_ID, PATH2FORUM_MESSAGE) VALUES(".$ID.", '".$DB->ForSql($key, 2)."', '".$DB->ForSql($value, 250)."')",
false, "File: ".__FILE__."
Line: ".__LINE__);
}
if (is_set($arFields, "GROUP_ID") && is_array($arFields["GROUP_ID"]))
{
CForumNew::SetAccessPermissions($ID, $arFields["GROUP_ID"]);
}
}
/***************** Event onAfterForumAdd ***************************/
foreach (GetModuleEvents("forum", "onAfterForumAdd", true) as $arEvent)
ExecuteModuleEventEx($arEvent, array(&$ID, &$arFields));
/***************** /Event ******************************************/
return $ID;
}