From 703235f60092b28e8cd8a9c923480015cadfe17b Mon Sep 17 00:00:00 2001 From: eileen Date: Mon, 17 Jun 2019 19:34:02 -0400 Subject: [PATCH] dev/core#1038 partial - fix checksum url for cancelling recurring with mid in the url This is a partial fix targetting when the mid is the identifier in this url - eg. ttp://dmaster.local/civicrm/contribute/unsubscribe?reset=1&mid=35&cs=2eefe06c8d2f07bd644233c525dde0d6_1560813106_168 addressing bugs in checksum handling --- CRM/Contribute/Form/CancelSubscription.php | 6 +----- CRM/Contribute/Form/ContributionRecur.php | 9 +++++++++ 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/CRM/Contribute/Form/CancelSubscription.php b/CRM/Contribute/Form/CancelSubscription.php index 1f32d308ba..d65e8d3947 100644 --- a/CRM/Contribute/Form/CancelSubscription.php +++ b/CRM/Contribute/Form/CancelSubscription.php @@ -83,10 +83,6 @@ class CRM_Contribute_Form_CancelSubscription extends CRM_Contribute_Form_Contrib $this->_mode = 'auto_renew'; // CRM-18468: crid is more accurate than mid for getting // subscriptionDetails, so don't get them again. - if (!$this->_crid) { - $this->_paymentProcessorObj = CRM_Financial_BAO_PaymentProcessor::getProcessorForEntity($this->_mid, 'membership', 'obj'); - $this->_subscriptionDetails = CRM_Contribute_BAO_ContributionRecur::getSubscriptionDetails($this->_mid, 'membership'); - } $membershipTypes = CRM_Member_PseudoConstant::membershipType(); $membershipTypeId = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_Membership', $this->_mid, 'membership_type_id'); @@ -136,7 +132,7 @@ class CRM_Contribute_Form_CancelSubscription extends CRM_Contribute_Form_Contrib 'cancel_reason' => ['name' => 'cancel_reason'], ]; $this->entityFields['send_cancel_request'] = [ - 'title' => ts('Send cancellation request to %1 ?', [1 => $this->_paymentProcessorObj->_processorName]), + 'title' => ts('Send cancellation request?'), 'name' => 'send_cancel_request', 'not-auto-addable' => TRUE, ]; diff --git a/CRM/Contribute/Form/ContributionRecur.php b/CRM/Contribute/Form/ContributionRecur.php index f5b26ce4e7..9e96e10d14 100644 --- a/CRM/Contribute/Form/ContributionRecur.php +++ b/CRM/Contribute/Form/ContributionRecur.php @@ -162,6 +162,10 @@ class CRM_Contribute_Form_ContributionRecur extends CRM_Core_Form { } $this->_paymentProcessorObj = $this->_paymentProcessor['object']; } + elseif ($this->_mid) { + $this->_paymentProcessorObj = CRM_Financial_BAO_PaymentProcessor::getProcessorForEntity($this->_mid, 'membership', 'obj'); + $this->_paymentProcessor = $this->_paymentProcessorObj->getPaymentProcessor(); + } } /** @@ -174,6 +178,11 @@ class CRM_Contribute_Form_ContributionRecur extends CRM_Core_Form { elseif ($this->_coid) { $this->subscriptionDetails = $this->_subscriptionDetails = CRM_Contribute_BAO_ContributionRecur::getSubscriptionDetails($this->_coid, 'contribution'); } + elseif ($this->_mid) { + $this->subscriptionDetails = CRM_Contribute_BAO_ContributionRecur::getSubscriptionDetails($this->_mid, 'membership'); + } + // This is being set temporarily - we should eventually just use the getter fn. + $this->_subscriptionDetails = $this->subscriptionDetails; } /** -- 2.25.1