- Модуль: forum
- Путь к файлу: ~/bitrix/modules/forum/classes/general/private_message.php
- Класс: CAllForumPrivateMessage
- Вызов: CAllForumPrivateMessage::Update
static function Update($ID, $arFields)
{
global $DB, $USER;
$ID = intval($ID);
if (is_set($arFields, "AUTHOR_ID")&&(intval($arFields["AUTHOR_ID"])))
$arFields["AUTHOR_ID"] = $arFields["USER_ID"];
if (is_set($arFields, "RECIPIENT_ID")&&(intval($arFields["RECIPIENT_ID"])))
$arFields["RECIPIENT_ID"] = $arFields["USER_ID"];
if (is_set($arFields, "POST_DATE")&&(trim($arFields["POST_DATE"]) == ''))
$arFields["~POST_DATE"] = $DB->GetNowFunction();
if(is_set($arFields, "USE_SMILES") && $arFields["USE_SMILES"]!="Y")
$arFields["USE_SMILES"]="N";
if(is_set($arFields, "IS_READ") && $arFields["IS_READ"]!="Y")
$arFields["IS_READ"]="N";
if(is_set($arFields, "FOLDER_ID") && (intval($arFields["FOLDER_ID"]) < 0))
$arFields["FOLDER_ID"] = 4;
foreach (GetModuleEvents("forum", "onBeforePMUpdate", true) as $arEvent)
{
if (ExecuteModuleEventEx($arEvent, array($ID, &$arFields)) === false)
return false;
}
if(CForumPrivateMessage::CheckFields($arFields, true))
{
$strUpdate = $DB->PrepareUpdate("b_forum_private_message", $arFields);
$strSql = "UPDATE b_forum_private_message SET ".$strUpdate." WHERE ID=".$ID;
$res = $DB->QueryBind($strSql, Array("POST_MESSAGE"=>$arFields["POST_MESSAGE"]), false, "FILE: ".__FILE__."
LINE: ".__LINE__);
return $res;
}
return false;
}