From 388d10d810e6fafa594db6468bb2d9e43b8d829a Mon Sep 17 00:00:00 2001 From: Tyrell Cook Date: Wed, 8 Apr 2015 15:55:28 -0400 Subject: [PATCH] CRM-15992 update primary membership --- CRM/Member/BAO/Membership.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/CRM/Member/BAO/Membership.php b/CRM/Member/BAO/Membership.php index 497dadcd19..30d77c26d1 100644 --- a/CRM/Member/BAO/Membership.php +++ b/CRM/Member/BAO/Membership.php @@ -987,6 +987,21 @@ INNER JOIN civicrm_membership_type type ON ( type.id = membership.membership_ty * @return array|bool */ public static function getContactMembership($contactID, $memType, $isTest, $membershipId = NULL, $onlySameParentOrg = FALSE) { + //check for owner membership id, if it exists update that membership instead: CRM-15992 + if ($membershipId) { + $ownerMemberId = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_Membership', + $membershipId, + 'owner_membership_id', 'id' + ); + if ($ownerMemberId) { + $membershipId = $ownerMemberId; + $contactID = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_Membership', + $membershipId, + 'contact_id', 'id' + ); + } + } + $dao = new CRM_Member_DAO_Membership(); if ($membershipId) { $dao->id = $membershipId; -- 2.25.1