- Модуль: forum
- Путь к файлу: ~/bitrix/modules/forum/classes/general/private_message.php
- Класс: CAllForumPrivateMessage
- Вызов: CAllForumPrivateMessage::MakeRead
static function MakeRead($ID)
{
global $DB;
$ID = intval($ID);
$version = intval(COption::GetOptionString("forum", "UsePMVersion", "2"));
if($ID>0)
{
$db_res = CForumPrivateMessage::GetListEx(array(), array("ID" => $ID));
if ($db_res && ($resFields = $db_res->Fetch()) && ($resFields["IS_READ"] != "Y"))
{
foreach (GetModuleEvents("forum", "onBeforePMMakeRead", true) as $arEvent)
{
if (ExecuteModuleEventEx($arEvent, array($ID, &$resFields)) === false)
return false;
}
$strSql = "UPDATE b_forum_private_message SET IS_READ='Y' WHERE ID=".$ID;
$DB->Query($strSql, false, "File: ".__FILE__."
Line: ".__LINE__);
if ($version == 1 && ($resFields["IS_READ"] == "N"))
{
$resFields = array_merge($resFields, array("USER_ID"=>$resFields["AUTHOR_ID"], "FOLDER_ID"=>3, "IS_READ"=>"Y"));
$resFields["REQUEST_IS_READ"] = $resFields["REQUEST_IS_READ"]!="Y" ? "N" : "Y";
if(CForumPrivateMessage::CheckFields($resFields, "E"))
{
unset($resFields["ID"]);
return $DB->Add("b_forum_private_message", $resFields, Array("POST_MESSAGE"));
}
}
}
}
return false;
}