- Модуль: support
- Путь к файлу: ~/bitrix/modules/support/classes/mysql/support.php
- Класс: CTicket
- Вызов: CTicket::DeleteMessage
static function DeleteMessage($ID, $checkRights="Y")
{
$err_mess = (CTicket::err_mess())."
Function: DeleteMessage
Line: ";
global $DB;
$ID = intval($ID);
if ($ID<=0) return;
$bAdmin = "N";
if ($checkRights=="Y")
{
$bAdmin = (CTicket::IsAdmin()) ? "Y" : "N";
}
else
{
$bAdmin = "Y";
}
if ($bAdmin=="Y")
{
$strSql = "
SELECT
F.ID FILE_ID,
M.TICKET_ID
FROM
b_ticket_message M
LEFT JOIN b_ticket_message_2_file MF ON (MF.MESSAGE_ID = M.ID)
LEFT JOIN b_file F ON (F.ID = MF.FILE_ID)
WHERE
M.ID='$ID'
";
$z = $DB->Query($strSql, false, $err_mess.__LINE__);
while ($zr = $z->Fetch())
{
$ticketID = $zr["TICKET_ID"];
if (intval($zr["FILE_ID"])>0)
{
CFile::Delete($zr["FILE_ID"]);
}
}
$z = $DB->Query("DELETE FROM b_ticket_message WHERE ID='$ID'", false, $err_mess.__LINE__);
if (intval($z->AffectedRowsCount())>0)
{
//CTicket::UpdateLastParams($ticketID);
//CTicket::UpdateLastParams2($ticketID, CTicket::DELETE);
CTicket::UpdateLastParamsN($ticketID, array("EVENT"=>array(CTicket::DELETE)), true, true);
if (CSupportSearch::isIndexExists())
{
CSupportSearch::reindexTicket($ticketID);
}
}
}
}