CRM-17481 fix - Simply saving Individual Edit Form, create new inherited membership...
authormonishdeb <monish.deb@webaccessglobal.com>
Tue, 3 Nov 2015 11:16:16 +0000 (16:46 +0530)
committermonishdeb <monish.deb@webaccessglobal.com>
Tue, 3 Nov 2015 11:16:16 +0000 (16:46 +0530)
https://issues.civicrm.org/jira/browse/CRM-17481

CRM/Contact/BAO/Relationship.php

index c762b65dc8986a0cb513effda67c485098ff907c..4483d9797bdc4d0a2593f7789310e88047b1e438 100644 (file)
@@ -1616,6 +1616,19 @@ SELECT relationship_type_id, relationship_direction
               }
             }
 
+            if ($action & CRM_Core_Action::UPDATE) {
+              //if updated relationship is already related to contact don't delete existing inherited membership
+              if (in_array($relTypeId, $relTypeIds
+                ) && !empty($values[$relatedContactId]['memberships']) && !empty($ownerMemIds
+                ) && in_array($membershipValues['owner_membership_id'], $ownerMemIds[$relatedContactId])) {
+                continue;
+              }
+
+              //delete the membership record for related
+              //contact before creating new membership record.
+              CRM_Member_BAO_Membership::deleteRelatedMemberships($membershipId, $relatedContactId);
+            }
+
             // check whether we have some related memberships still available
             $query = "
 SELECT count(*)