- Модуль: support
- Путь к файлу: ~/bitrix/modules/support/classes/general/sla.php
- Класс: CAllTicketSLA
- Вызов: CAllTicketSLA::Delete
static function Delete($id, $checkRights=true)
{
$err_mess = (CAllTicketSLA::err_mess())."
Function: Delete
Line: ";
global $DB, $USER, $APPLICATION;
$id = intval($id);
if ($id < 1)
{
return false;
}
if ($id == 1)
{
$APPLICATION->ThrowException(GetMessage("SUP_ERROR_SLA_1"));
return false;
}
$isDemo = $isSupportClient = $isSupportTeam = $isAdmin = $isAccess = $userID = null;
CTicket::GetRoles($isDemo, $isSupportClient, $isSupportTeam, $isAdmin, $isAccess, $userID, $checkRights);
if ($isAdmin)
{
$strSql = "SELECT DISTINCT 'x' FROM b_ticket WHERE SLA_ID = $id";
$rs = $DB->Query($strSql, false, $err_mess.__LINE__);
if (!$rs->Fetch())
{
$DB->Query("DELETE FROM b_ticket_sla_2_site WHERE SLA_ID = $id", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_ticket_sla_2_category WHERE SLA_ID = $id", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_ticket_sla_2_criticality WHERE SLA_ID = $id", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_ticket_sla_2_mark WHERE SLA_ID = $id", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_ticket_sla_2_user_group WHERE SLA_ID = $id", false, $err_mess.__LINE__);
//$DB->Query("DELETE FROM b_ticket_sla_shedule WHERE SLA_ID = $id", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_ticket_sla_2_holidays WHERE SLA_ID = $id", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_ticket_sla WHERE ID = $id", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_ticket_timetable_cache WHERE SLA_ID = $id", false, $err_mess . __LINE__);
return true;
}
else
{
$APPLICATION->ThrowException(str_replace("#ID#", "$id", GetMessage("SUP_ERROR_SLA_HAS_TICKET")));
}
}
else
{
$APPLICATION->ThrowException(GetMessage("SUP_ERROR_ACCESS_DENIED"));
}
return false;
}