Exemple #1
0
 /**
  * @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"])) {