}
if (!empty($membershipContribution)) {
- // update recurring id for membership record
- CRM_Member_BAO_Membership::updateRecurMembership($membership, $membershipContribution);
// Next line is probably redundant. Checks prevent it happening twice.
$membershipPaymentParams = [
'membership_id' => $membership->id,
}
/**
+ * @deprecated This is not used anywhere and should be removed soon!
* Function for updating a membership record's contribution_recur_id.
*
* @param CRM_Member_DAO_Membership $membership
* @param \CRM_Contribute_BAO_Contribution|\CRM_Contribute_DAO_Contribution $contribution
*/
public static function updateRecurMembership(CRM_Member_DAO_Membership $membership, CRM_Contribute_BAO_Contribution $contribution) {
+ CRM_Core_Error::deprecatedFunctionWarning('Use the API instead');
if (empty($contribution->contribution_recur_id)) {
return;
$membershipTypeDetails = CRM_Member_BAO_MembershipType::getMembershipTypeDetails($membershipTypeID);
$dates = [];
$ids = [];
+
// CRM-7297 - allow membership type to be be changed during renewal so long as the parent org of new membershipType
// is the same as the parent org of an existing membership of the contact
$currentMembership = CRM_Member_BAO_Membership::getContactMembership($contactID, $membershipTypeID,
$this->assertEquals($membership['contact_id'], $contribution['contact_id']);
$this->assertEquals($expectedMembershipStatus, $membership['status_id']);
$this->callAPISuccess('contribution_recur', 'getsingle', ['id' => $contribution['contribution_recur_id']]);
+ $this->assertEquals($contribution['contribution_recur_id'], $membership['contribution_recur_id']);
$this->callAPISuccess('line_item', 'getsingle', ['contribution_id' => $contribution['id'], 'entity_id' => $membership['id']]);
//renew it with processor setting completed - should extend membership