From 400eb1e847b10acfd1dafcc26e2dc9f8733b55d8 Mon Sep 17 00:00:00 2001 From: Jon Goldberg Date: Thu, 6 Jul 2023 18:38:49 -0400 Subject: [PATCH] merge conflict resolution --- CRM/Contribute/Form/Contribution/Confirm.php | 31 ++++++++---------- CRM/Contribute/Form/Contribution/Main.php | 32 ++++++++----------- CRM/Contribute/Form/Contribution/ThankYou.php | 31 ++++++++---------- 3 files changed, 42 insertions(+), 52 deletions(-) diff --git a/CRM/Contribute/Form/Contribution/Confirm.php b/CRM/Contribute/Form/Contribution/Confirm.php index 5b28abd7af..35317353e9 100644 --- a/CRM/Contribute/Form/Contribution/Confirm.php +++ b/CRM/Contribute/Form/Contribution/Confirm.php @@ -753,29 +753,26 @@ class CRM_Contribute_Form_Contribution_Confirm extends CRM_Contribute_Form_Contr } if ($cid) { - $membership = new CRM_Member_DAO_Membership(); - $membership->contact_id = $cid; - $membership->membership_type_id = $memType['id']; - //show current membership, skip pending and cancelled membership records, //because we take first membership record id for renewal - $membership->whereAdd('status_id != 5 AND status_id !=6'); - - if (!is_null($isTest)) { - $membership->is_test = $isTest; - } - - //CRM-4297 - $membership->orderBy('end_date DESC'); - - if ($membership->find(TRUE)) { - if (!$membership->end_date) { + $membership = \Civi\Api4\Membership::get(FALSE) + ->addSelect('end_date', 'membership_type_id', 'membership_type_id.duration_unit:name') + ->addWhere('contact_id', '=', $cid) + ->addWhere('membership_type_id', '=', $memType['id']) + ->addWhere('status_id:name', 'NOT IN', ['Cancelled', 'Pending']) + ->addWhere('is_test', '=', (bool) $isTest) + ->addOrderBy('end_date', 'DESC') + ->execute() + ->first(); + + if ($membership) { + if ($membership["membership_type_id.duration_unit:name"] === 'lifetime') { $this->assign('islifetime', TRUE); continue; } $this->assign('renewal_mode', TRUE); - $this->_currentMemberships[$membership->membership_type_id] = $membership->membership_type_id; - $memType['current_membership'] = $membership->end_date; + $this->_currentMemberships[$membership['membership_type_id']] = $membership['membership_type_id']; + $memType['current_membership'] = $membership['end_date']; if (!$endDate) { $endDate = $memType['current_membership']; $this->_defaultMemTypeId = $memType['id']; diff --git a/CRM/Contribute/Form/Contribution/Main.php b/CRM/Contribute/Form/Contribution/Main.php index b890f9f980..bb42a56482 100644 --- a/CRM/Contribute/Form/Contribution/Main.php +++ b/CRM/Contribute/Form/Contribution/Main.php @@ -500,7 +500,6 @@ class CRM_Contribute_Form_Contribution_Main extends CRM_Contribute_Form_Contribu private function buildMembershipBlock() { $cid = $this->_membershipContactID; $isTest = (bool) ($this->_action & CRM_Core_Action::PREVIEW); - $selectedMembershipTypeID = NULL; $separateMembershipPayment = FALSE; $this->addOptionalQuickFormElement('auto_renew'); if ($this->_membershipBlock) { @@ -575,31 +574,28 @@ class CRM_Contribute_Form_Contribution_Main extends CRM_Contribute_Form_Contribu $radio[$memType['id']] = NULL; $radioOptAttrs[$memType['id']] = $javascriptMethod; if ($cid) { - $membership = new CRM_Member_DAO_Membership(); - $membership->contact_id = $cid; - $membership->membership_type_id = $memType['id']; - //show current membership, skip pending and cancelled membership records, //because we take first membership record id for renewal - $membership->whereAdd('status_id != 5 AND status_id !=6'); - - if (!is_null($isTest)) { - $membership->is_test = $isTest; - } - - //CRM-4297 - $membership->orderBy('end_date DESC'); - - if ($membership->find(TRUE)) { - if (!$membership->end_date) { + $membership = \Civi\Api4\Membership::get(FALSE) + ->addSelect('end_date', 'membership_type_id', 'membership_type_id.duration_unit:name') + ->addWhere('contact_id', '=', $cid) + ->addWhere('membership_type_id', '=', $memType['id']) + ->addWhere('status_id:name', 'NOT IN', ['Cancelled', 'Pending']) + ->addWhere('is_test', '=', (bool) $isTest) + ->addOrderBy('end_date', 'DESC') + ->execute() + ->first(); + + if ($membership) { + if ($membership["membership_type_id.duration_unit:name"] === 'lifetime') { unset($radio[$memType['id']]); unset($radioOptAttrs[$memType['id']]); $this->assign('islifetime', TRUE); continue; } $this->assign('renewal_mode', TRUE); - $this->_currentMemberships[$membership->membership_type_id] = $membership->membership_type_id; - $memType['current_membership'] = $membership->end_date; + $this->_currentMemberships[$membership['membership_type_id']] = $membership['membership_type_id']; + $memType['current_membership'] = $membership['end_date']; if (!$endDate) { $endDate = $memType['current_membership']; $this->_defaultMemTypeId = $memType['id']; diff --git a/CRM/Contribute/Form/Contribution/ThankYou.php b/CRM/Contribute/Form/Contribution/ThankYou.php index 85df7bdb86..5eb6769dd1 100644 --- a/CRM/Contribute/Form/Contribution/ThankYou.php +++ b/CRM/Contribute/Form/Contribution/ThankYou.php @@ -381,29 +381,26 @@ class CRM_Contribute_Form_Contribution_ThankYou extends CRM_Contribute_Form_Cont //add membership type. if ($cid) { - $membership = new CRM_Member_DAO_Membership(); - $membership->contact_id = $cid; - $membership->membership_type_id = $memType['id']; - //show current membership, skip pending and cancelled membership records, //because we take first membership record id for renewal - $membership->whereAdd('status_id != 5 AND status_id !=6'); - - if (!is_null($isTest)) { - $membership->is_test = $isTest; - } - - //CRM-4297 - $membership->orderBy('end_date DESC'); - - if ($membership->find(TRUE)) { - if (!$membership->end_date) { + $membership = \Civi\Api4\Membership::get(FALSE) + ->addSelect('end_date', 'membership_type_id', 'membership_type_id.duration_unit:name') + ->addWhere('contact_id', '=', $cid) + ->addWhere('membership_type_id', '=', $memType['id']) + ->addWhere('status_id:name', 'NOT IN', ['Cancelled', 'Pending']) + ->addWhere('is_test', '=', (bool) $isTest) + ->addOrderBy('end_date', 'DESC') + ->execute() + ->first(); + + if ($membership) { + if ($membership["membership_type_id.duration_unit:name"] === 'lifetime') { $this->assign('islifetime', TRUE); continue; } $this->assign('renewal_mode', TRUE); - $this->_currentMemberships[$membership->membership_type_id] = $membership->membership_type_id; - $memType['current_membership'] = $membership->end_date; + $this->_currentMemberships[$membership['membership_type_id']] = $membership['membership_type_id']; + $memType['current_membership'] = $membership['end_date']; if (!$endDate) { $endDate = $memType['current_membership']; $this->_defaultMemTypeId = $memType['id']; -- 2.25.1