• Модуль: forum
  • Путь к файлу: ~/bitrix/modules/forum/classes/general/private_message.php
  • Класс: CAllForumPrivateMessage
  • Вызов: CAllForumPrivateMessage::Delete
static function Delete($ID)
{
	global $DB, $USER;
	$ID = intval($ID);

	$list = array();
	$list = CForumPrivateMessage::GetList(array(), array("ID"=>$ID));
	$arFields = $list->GetNext();

	$result = false;

	foreach (GetModuleEvents("forum", "onBeforePMDelete", true) as $arEvent)
	{
		if (ExecuteModuleEventEx($arEvent, array($ID, &$arFields)) === false)
			return $result;
	}

	$eventID = "onAfterPMDelete";
	if ($arFields["FOLDER_ID"] == 4)
	{
		$DB->Query("DELETE FROM b_forum_private_message WHERE ID=".$ID);
		$result = true;
	}
	else
	{
		$eventID = "onAfterPMTrash";
		if(CForumPrivateMessage::Update($ID, array("FOLDER_ID"=>4, "IS_READ"=>"Y", "USER_ID"=>$USER->GetId())))
			$result = true;
	}

	if ($result)
	{
		foreach (GetModuleEvents("forum", $eventID, true) as $arEvent)
			ExecuteModuleEventEx($arEvent, array($ID, &$arFields));
	}
	return $result;
}