* @access public
*/
static function deleteMembership($membershipId) {
- CRM_Utils_Hook::pre('delete', 'Membership', $membershipId, CRM_Core_DAO::$_nullArray);
+ // CRM-12147, retrieve membership data before we delete it for hooks
+ $params = array('id' => $membershipId);
+ $memValues = array();
+ $memberships = self::getValues($params, $memValues);
+ $membership = $memberships[$membershipId];
+
+ CRM_Utils_Hook::pre('delete', 'Membership', $membershipId, $memValues);
$transaction = new CRM_Core_Transaction();
$params = array();
$deleteActivity = false;
- $membershipActivities = array('Membership Signup', 'Membership Renewal', 'Change Membership Status', 'Change Membership Type', 'Membership Renewal Reminder');
+ $membershipActivities = array(
+ 'Membership Signup',
+ 'Membership Renewal',
+ 'Change Membership Status',
+ 'Change Membership Type',
+ 'Membership Renewal Reminder'
+ );
foreach($membershipActivities as $membershipActivity) {
$activityId = array_search($membershipActivity, $activityTypes);
if ($activityId) {
}
if ($deleteActivity) {
$params['source_record_id'] = $membershipId;
- CRM_Activity_BAO_Activity::deleteActivity($params);
+ CRM_Activity_BAO_Activity::deleteActivity($params);
}
self::deleteMembershipPayment($membershipId);
- // CRM-12147, retrieve membership data before we delete it for hooks
- $params = array('id' => $membershipId);
- $memberships = self::getValues($params, $values);
- $membership = $memberships[$membershipId];
-
$results = $membership->delete();
$transaction->commit();