• Модуль: forum
  • Путь к файлу: ~/bitrix/modules/forum/classes/general/message.php
  • Класс: CALLForumFiles
  • Вызов: CALLForumFiles::Delete
static function Delete($arFields = array(), $arParams = array())
{
	global $DB;
	$arFields = (is_array($arFields) ? $arFields : array($arFields));
	$arParams = (is_array($arParams) ? $arParams : array($arParams));
	$arSQL = array();
	if (empty($arFields))
		return false;
	if (intval($arFields["FILE_ID"]) > 0)
		$arSQL[] = "FILE_ID=".intval($arFields["FILE_ID"]);
	if (intval($arFields["MESSAGE_ID"]) > 0 && (!empty($arSQL) || $arParams["DELETE_MESSAGE_FILE"] == "Y"))
		$arSQL[] = "MESSAGE_ID=".intval($arFields["MESSAGE_ID"]);
	if (intval($arFields["TOPIC_ID"]) > 0 && (!empty($arSQL) || $arParams["DELETE_TOPIC_FILE"] == "Y"))
		$arSQL[] = "TOPIC_ID=".intval($arFields["TOPIC_ID"]);
	if (intval($arFields["FORUM_ID"]) > 0 && (!empty($arSQL) || $arParams["DELETE_FORUM_FILE"] == "Y"))
		$arSQL[] = "FORUM_ID=".intval($arFields["FORUM_ID"]);
	if (empty($arSQL))
		return false;
	$db_res = $DB->Query("SELECT * from b_forum_file where ".implode(" AND ", $arSQL), false, "FILE: ".__FILE__." LINE:".__LINE__);
	if ($db_res && $res = $db_res->Fetch())
	{
		do
		{
			CFile::Delete($res["FILE_ID"]);
		} while ($res = $db_res->Fetch());
	}
}