- Модуль: forum
- Путь к файлу: ~/bitrix/modules/forum/lib/message.php
- Класс: BitrixForumMessageTable
- Вызов: MessageTable::onUpdate
static function onUpdate(MainORMEvent $event)
{
$id = $event->getParameter("id");
$id = $id["ID"];
$message = self::getDataById($id);
$fields = $event->getParameter("fields") + $message;
$object = $event->getParameter("object");
if ($files = $object->sysGetRuntime("FILES"))
{
File::saveFiles(
$files,
[
"FORUM_ID" => $fields["FORUM_ID"],
"TOPIC_ID" => $fields["TOPIC_ID"],
"MESSAGE_ID" => $id,
"USER_ID" => $fields["AUTHOR_ID"],
],
($object->sysGetRuntime("UPLOAD_DIR") ?: "forum/upload"));
}
if (MainConfigOption::get("forum", "MESSAGE_HTML", "N") == "Y")
{
$result = new MainORMEventResult();
$parser = new forumTextParser(LANGUAGE_ID);
$allow = forumTextParser::GetFeatures(BitrixForumForum::getById($fields["FORUM_ID"]));
$allow["SMILES"] = ($fields["USE_SMILES"] != "Y" ? "N" : $allow["SMILES"]);
$result->modifyFields([
"POST_MESSAGE_HTML" => $parser->convert($fields["POST_MESSAGE_FILTER"] ?: $fields["POST_MESSAGE"], $allow, "html", $files)
]);
return $result;
}
}