- Модуль: sender
- Путь к файлу: ~/bitrix/modules/sender/lib/internals/model/letter.php
- Класс: Bitrix\Sender\Internals\Model\LetterTable
- Вызов: LetterTable::onDelete
static function onDelete(Entity\Event $event)
{
$data = $event->getParameters();
$fields = static::getRowById($data['primary']['ID']);
if ($fields)
{
$fileQuery = MessageFieldTable::getById([
'MESSAGE_ID' => $fields['MESSAGE_ID'],
'CODE' => 'ATTACHMENT',
]);
if($row = $fileQuery->fetch())
{
$files = explode(",", $row['VALUE']);
foreach ($files as $file)
{
if((int)$file)
{
\CFile::Delete((int)$file);
}
}
}
$messageQuery = MessageFieldTable::getById([
'MESSAGE_ID' => $fields['MESSAGE_ID'],
'CODE' => 'MESSAGE',
]);
if($row = $messageQuery->fetch())
{
FileTable::syncFiles($data['primary']['ID'], 0, $row['VALUE'], true, true);
}
MessageTable::delete($fields['MESSAGE_ID']);
}
return MailingChainTable::onDelete($event);
}