- Модуль: support
- Путь к файлу: ~/bitrix/modules/support/classes/general/reminder.php
- Класс: CAllTicketReminder
- Вызов: CAllTicketReminder::SupportDeadline
static function SupportDeadline($arrTicket)
{
global $MESS, $DB;
$err_mess = (CAllTicketReminder::err_mess())."
Function: supportDeadline
Line: ";
$rsSite = CSite::GetByID($arrTicket["SITE_ID"]);
$arSite = $rsSite->Fetch();
//$oldMess = $MESS;
IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/support/classes/general/messages.php", $arSite["LANGUAGE_ID"]);
// update message params
$arFields = array(
"EXPIRE_AGENT_ID" => "null",
"IS_OVERDUE" => "'Y'",
"OVERDUE_MESSAGES" => "OVERDUE_MESSAGES + 1",
);
// execute event
$rs = GetModuleEvents('support', 'OnBeforeTicketExpire');
while ($arr = $rs->Fetch())
{
$arFields = ExecuteModuleEventEx($arr, array($arrTicket["ID"], $arFields));
if (!$arFields)
{
return false;
}
}
$DB->Update("b_ticket", $arFields, "WHERE ID='" . $arrTicket["ID"] . "'", $err_mess . __LINE__);
// add message log
$message = str_replace("#ID#", $arrTicket["TM_ID"], GetMessage("SUP_MESSAGE_OVERDUE_LOG"));
$message = str_replace("#NUMBER#", $arrTicket["TM_C_NUMBER"], $message);
$message .= "
" . htmlspecialcharsEx(str_replace("#VALUE#", $arrTicket["SLA_NAME"], GetMessage("SUP_SLA_LOG")));
if(intval($arrTicket["RESPONSIBLE_USER_ID"]) > 0)
{
$rsUser = CUser::GetByID(intval($arrTicket["RESPONSIBLE_USER_ID"]));
$arUser = $rsUser->Fetch();
$responsibleText = "[" . $arUser["ID"] . "] (" . $arUser["LOGIN"] . ") " . $arUser["NAME"] . " " . $arUser["LAST_NAME"];
$message .= "".htmlspecialcharsEx(str_replace("#VALUE#", $responsibleText, GetMessage("SUP_RESPONSIBLE_LOG")));
}
$arFields = array(
"IS_LOG" => "Y",
"IS_OVERDUE" => "Y",
"MESSAGE_CREATED_USER_ID" => "null",
"MESSAGE_CREATED_MODULE_NAME" => "auto expiration",
"MESSAGE_CREATED_GUEST_ID" => "null",
"MESSAGE_SOURCE_ID" => "null",
"MESSAGE" => $message
);
$v = null;
$mid = CTicket::AddMessage($arrTicket['ID'], $arFields, $v, "N");
//$MESS = $oldMess;
}