diff --git a/CRM/Batch/BAO/Batch.php b/CRM/Batch/BAO/Batch.php index 3bb93f140b70..e9fea4c3fba1 100644 --- a/CRM/Batch/BAO/Batch.php +++ b/CRM/Batch/BAO/Batch.php @@ -119,7 +119,7 @@ public static function generateBatchName() { */ public static function deleteBatch($batchId) { // delete entry from batch table - CRM_Utils_Hook::pre('delete', 'Batch', $batchId, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Batch', $batchId); $batch = new CRM_Batch_DAO_Batch(); $batch->id = $batchId; $batch->delete(); diff --git a/CRM/Campaign/BAO/Campaign.php b/CRM/Campaign/BAO/Campaign.php index 7800cf925d46..1aa324805ec5 100644 --- a/CRM/Campaign/BAO/Campaign.php +++ b/CRM/Campaign/BAO/Campaign.php @@ -84,7 +84,7 @@ public static function del($id) { return FALSE; } - CRM_Utils_Hook::pre('delete', 'Campaign', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Campaign', $id); $dao = new CRM_Campaign_DAO_Campaign(); $dao->id = $id; diff --git a/CRM/Case/BAO/Case.php b/CRM/Case/BAO/Case.php index 96a511e69bc9..9d7a008c8982 100644 --- a/CRM/Case/BAO/Case.php +++ b/CRM/Case/BAO/Case.php @@ -187,7 +187,7 @@ public static function getCaseType($caseId, $colName = 'title') { * is successful */ public static function deleteCase($caseId, $moveToTrash = FALSE) { - CRM_Utils_Hook::pre('delete', 'Case', $caseId, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Case', $caseId); //delete activities $activities = self::getCaseActivityDates($caseId); diff --git a/CRM/Contact/BAO/Contact.php b/CRM/Contact/BAO/Contact.php index 8d1095747eca..fb643f47c30f 100644 --- a/CRM/Contact/BAO/Contact.php +++ b/CRM/Contact/BAO/Contact.php @@ -3473,9 +3473,9 @@ public static function deleteObjectWithPrimary($type, $id) { $obj = new $daoName(); $obj->id = $id; $obj->find(); - $hookParams = []; + if ($obj->fetch()) { - CRM_Utils_Hook::pre('delete', $type, $id, $hookParams); + CRM_Utils_Hook::pre('delete', $type, $id); $contactId = $obj->contact_id; $obj->delete(); } diff --git a/CRM/Contact/BAO/Group.php b/CRM/Contact/BAO/Group.php index 5861b057571d..138fd9e2d3ed 100644 --- a/CRM/Contact/BAO/Group.php +++ b/CRM/Contact/BAO/Group.php @@ -55,7 +55,7 @@ public static function discard($id) { if (!$id || !is_numeric($id)) { throw new CRM_Core_Exception('Invalid group request attempted'); } - CRM_Utils_Hook::pre('delete', 'Group', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Group', $id); $transaction = new CRM_Core_Transaction(); diff --git a/CRM/Contact/BAO/Relationship.php b/CRM/Contact/BAO/Relationship.php index 85a8f53822f1..8df124f1c4f3 100644 --- a/CRM/Contact/BAO/Relationship.php +++ b/CRM/Contact/BAO/Relationship.php @@ -717,7 +717,7 @@ public static function clearCurrentEmployer($id, $action) { */ public static function del($id) { // delete from relationship table - CRM_Utils_Hook::pre('delete', 'Relationship', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Relationship', $id); $relationship = self::clearCurrentEmployer($id, CRM_Core_Action::DELETE); $relationship->delete(); diff --git a/CRM/Contribute/BAO/Contribution.php b/CRM/Contribute/BAO/Contribution.php index 554593609806..236c1c203e25 100644 --- a/CRM/Contribute/BAO/Contribution.php +++ b/CRM/Contribute/BAO/Contribution.php @@ -1491,7 +1491,7 @@ public static function getTotalAmountAndCount($status = NULL, $startDate = NULL, * $results no of deleted Contribution on success, false otherwise */ public static function deleteContribution($id) { - CRM_Utils_Hook::pre('delete', 'Contribution', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Contribution', $id); $transaction = new CRM_Core_Transaction(); diff --git a/CRM/Core/BAO/UFGroup.php b/CRM/Core/BAO/UFGroup.php index a79ee24ea5b3..fcf582ef6f66 100644 --- a/CRM/Core/BAO/UFGroup.php +++ b/CRM/Core/BAO/UFGroup.php @@ -1399,6 +1399,8 @@ public static function usedByModule($id) { * */ public static function del($id) { + CRM_Utils_Hook::pre('delete', 'UFGroup', $id); + //check whether this group contains any profile fields $profileField = new CRM_Core_DAO_UFField(); $profileField->uf_group_id = $id; @@ -1416,6 +1418,8 @@ public static function del($id) { $group = new CRM_Core_DAO_UFGroup(); $group->id = $id; $group->delete(); + + CRM_Utils_Hook::post('delete', 'UFGroup', $id, $group); return 1; } diff --git a/CRM/Event/BAO/Event.php b/CRM/Event/BAO/Event.php index 26bb7f276595..6adb77093daf 100644 --- a/CRM/Event/BAO/Event.php +++ b/CRM/Event/BAO/Event.php @@ -171,7 +171,7 @@ public static function del($id) { return NULL; } - CRM_Utils_Hook::pre('delete', 'Event', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Event', $id); $extends = ['event']; $groupTree = CRM_Core_BAO_CustomGroup::getGroupDetail(NULL, NULL, $extends); diff --git a/CRM/Event/BAO/Participant.php b/CRM/Event/BAO/Participant.php index 9818d888988b..9c726376c9f5 100644 --- a/CRM/Event/BAO/Participant.php +++ b/CRM/Event/BAO/Participant.php @@ -843,7 +843,7 @@ public static function deleteParticipant($id) { if (!$participant->find()) { return FALSE; } - CRM_Utils_Hook::pre('delete', 'Participant', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Participant', $id); $transaction = new CRM_Core_Transaction(); diff --git a/CRM/Grant/BAO/Grant.php b/CRM/Grant/BAO/Grant.php index e203d546f558..bc33e04c8070 100644 --- a/CRM/Grant/BAO/Grant.php +++ b/CRM/Grant/BAO/Grant.php @@ -252,7 +252,7 @@ public static function deleteContact($id) { * @return bool|mixed */ public static function del($id) { - CRM_Utils_Hook::pre('delete', 'Grant', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Grant', $id); $grant = new CRM_Grant_DAO_Grant(); $grant->id = $id; diff --git a/CRM/Mailing/BAO/Mailing.php b/CRM/Mailing/BAO/Mailing.php index 8a1e9529096e..f28c1f17f5ef 100644 --- a/CRM/Mailing/BAO/Mailing.php +++ b/CRM/Mailing/BAO/Mailing.php @@ -2463,7 +2463,7 @@ public static function del($id) { throw new CRM_Core_Exception(ts('No id passed to mailing del function')); } - CRM_Utils_Hook::pre('delete', 'Mailing', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Mailing', $id); // delete all file attachments CRM_Core_BAO_File::deleteEntityFile('civicrm_mailing', diff --git a/CRM/Mailing/BAO/MailingAB.php b/CRM/Mailing/BAO/MailingAB.php index 7d26a2c1000a..e035ec696229 100644 --- a/CRM/Mailing/BAO/MailingAB.php +++ b/CRM/Mailing/BAO/MailingAB.php @@ -61,7 +61,7 @@ public static function del($id) { throw new CRM_Core_Exception(ts('No id passed to MailingAB del function')); } CRM_Core_Transaction::create()->run(function () use ($id) { - CRM_Utils_Hook::pre('delete', 'MailingAB', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'MailingAB', $id); $dao = new CRM_Mailing_DAO_MailingAB(); $dao->id = $id; diff --git a/CRM/Mailing/BAO/MailingJob.php b/CRM/Mailing/BAO/MailingJob.php index 228406bb9965..020c65b7e16f 100644 --- a/CRM/Mailing/BAO/MailingJob.php +++ b/CRM/Mailing/BAO/MailingJob.php @@ -1122,7 +1122,7 @@ public static function findPendingTasks($jobId, $medium) { * @return mixed */ public static function del($id) { - CRM_Utils_Hook::pre('delete', 'MailingJob', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'MailingJob', $id); $jobDAO = new CRM_Mailing_BAO_MailingJob(); $jobDAO->id = $id; diff --git a/CRM/PCP/BAO/PCP.php b/CRM/PCP/BAO/PCP.php index 6fdd36d02753..9b6afa3dc580 100644 --- a/CRM/PCP/BAO/PCP.php +++ b/CRM/PCP/BAO/PCP.php @@ -340,7 +340,7 @@ public static function &pcpLinks($pcpId = NULL) { * Campaign page id. */ public static function deleteById($id) { - CRM_Utils_Hook::pre('delete', 'Campaign', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Campaign', $id); $transaction = new CRM_Core_Transaction(); diff --git a/CRM/Pledge/BAO/Pledge.php b/CRM/Pledge/BAO/Pledge.php index 9bc13cda3129..299e3ffa56b0 100644 --- a/CRM/Pledge/BAO/Pledge.php +++ b/CRM/Pledge/BAO/Pledge.php @@ -285,7 +285,7 @@ protected static function isPaymentsRequireRecalculation($params) { * @return mixed */ public static function deletePledge($id) { - CRM_Utils_Hook::pre('delete', 'Pledge', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'Pledge', $id); $transaction = new CRM_Core_Transaction(); diff --git a/CRM/Pledge/BAO/PledgeBlock.php b/CRM/Pledge/BAO/PledgeBlock.php index a3b80ff7d861..68304860c22e 100644 --- a/CRM/Pledge/BAO/PledgeBlock.php +++ b/CRM/Pledge/BAO/PledgeBlock.php @@ -93,7 +93,7 @@ public static function add($params) { * @return mixed|null */ public static function deletePledgeBlock($id) { - CRM_Utils_Hook::pre('delete', 'PledgeBlock', $id, CRM_Core_DAO::$_nullArray); + CRM_Utils_Hook::pre('delete', 'PledgeBlock', $id); $transaction = new CRM_Core_Transaction(); diff --git a/CRM/Utils/Hook.php b/CRM/Utils/Hook.php index 47233dd4bd7c..f173abac3bf2 100644 --- a/CRM/Utils/Hook.php +++ b/CRM/Utils/Hook.php @@ -339,7 +339,7 @@ public function requireCiviModules(&$moduleList) { * @return null * the return value is ignored */ - public static function pre($op, $objectName, $id, &$params) { + public static function pre($op, $objectName, $id, &$params = []) { $event = new \Civi\Core\Event\PreEvent($op, $objectName, $id, $params); \Civi::dispatcher()->dispatch('hook_civicrm_pre', $event); return $event->getReturnValues(); diff --git a/Civi/Api4/Generic/Traits/CustomValueActionTrait.php b/Civi/Api4/Generic/Traits/CustomValueActionTrait.php index 2fed2b7f467c..5a7a0e331276 100644 --- a/Civi/Api4/Generic/Traits/CustomValueActionTrait.php +++ b/Civi/Api4/Generic/Traits/CustomValueActionTrait.php @@ -83,7 +83,7 @@ protected function deleteObjects($items) { $customTable = CoreUtil::getTableName($this->getEntityName()); $ids = []; foreach ($items as $item) { - \CRM_Utils_Hook::pre('delete', $this->getEntityName(), $item['id'], \CRM_Core_DAO::$_nullArray); + \CRM_Utils_Hook::pre('delete', $this->getEntityName(), $item['id']); \CRM_Utils_SQL_Delete::from($customTable) ->where('id = #value') ->param('#value', $item['id'])