Exemple #1
0
 /**
  * @param Entity\Event $event
  * @return Entity\EventResult
  * @throws \Bitrix\Main\ArgumentException
  */
 public static function onDelete(Entity\Event $event)
 {
     $result = new Entity\EventResult();
     $data = $event->getParameters();
     $arId = array();
     if (array_key_exists('ID', $data['primary'])) {
         $arId[] = $data['primary']['ID'];
     } else {
         $arFilter = array();
         foreach ($data['primary'] as $primKey => $primVal) {
             $arFilter[$primKey] = $primVal;
         }
         $tableDataList = static::getList(array('select' => array('ID'), 'filter' => $arFilter));
         while ($tableData = $tableDataList->fetch()) {
             $arId[] = $tableData['ID'];
         }
     }
     foreach ($arId as $primaryId) {
         $primary = array('POSTING_ID' => $primaryId);
         PostingReadTable::delete($primary);
         PostingClickTable::delete($primary);
         PostingUnsubTable::delete($primary);
         PostingRecipientTable::delete($primary);
     }
     return $result;
 }