/** * @param Entity\Event $event * @return Entity\EventResult */ public static function onDelete(Entity\Event $event) { $result = new Entity\EventResult(); $data = $event->getParameters(); $deleteIdList = array(); if (!empty($data['primary'])) { $itemDb = static::getList(array('select' => array('ID'), 'filter' => $data['primary'])); while ($item = $itemDb->fetch()) { $deleteIdList[] = $item['ID']; } } foreach ($deleteIdList as $chainId) { MailingAttachmentTable::delete(array('CHAIN_ID' => $chainId)); MailingTriggerTable::delete(array('MAILING_CHAIN_ID' => $chainId)); PostingTable::delete(array('MAILING_CHAIN_ID' => $chainId)); } return $result; }
//add or delete files //Delete checked if (is_array($FILES_del)) { $FILE_ID_tmp = array(); foreach ($FILES_del as $file => $fileMarkDel) { $file = intval($file); if ($file > 0) { $FILE_ID_tmp[] = $file; } } if (count($FILE_ID_tmp) > 0) { $deleteFileDb = \Bitrix\Sender\MailingAttachmentTable::getList(array('select' => array('FILE_ID', 'CHAIN_ID'), 'filter' => array('CHAIN_ID' => $ID, 'FILE_ID' => $FILE_ID_tmp))); while ($arDeleteFile = $deleteFileDb->fetch()) { if (!empty($arDeleteFile)) { CFile::Delete($arDeleteFile["FILE_ID"]); \Bitrix\Sender\MailingAttachmentTable::delete($arDeleteFile); } } } } //Brandnew if (is_array($_FILES["NEW_FILE"])) { foreach ($_FILES["NEW_FILE"] as $attribute => $files) { if (is_array($files)) { foreach ($files as $index => $value) { $arFiles[$index][$attribute] = $value; } } } foreach ($arFiles as $index => $file) { if (!is_uploaded_file($file["tmp_name"])) {