diff --git a/CRM/Contribute/Form/CancelSubscription.php b/CRM/Contribute/Form/CancelSubscription.php index f27ef3094ea7..952f81be7b3b 100644 --- a/CRM/Contribute/Form/CancelSubscription.php +++ b/CRM/Contribute/Form/CancelSubscription.php @@ -229,7 +229,10 @@ public function postProcess() { } } - if ($cancelSubscription) { + if (is_a($cancelSubscription, 'CRM_Core_Error')) { + CRM_Core_Error::displaySessionError($cancelSubscription); + } + elseif ($cancelSubscription) { try { civicrm_api3('ContributionRecur', 'cancel', [ 'id' => $this->_subscriptionDetails->recur_id, diff --git a/CRM/Contribute/Form/UpdateSubscription.php b/CRM/Contribute/Form/UpdateSubscription.php index 9c2d3f369831..eb63a9b28e13 100644 --- a/CRM/Contribute/Form/UpdateSubscription.php +++ b/CRM/Contribute/Form/UpdateSubscription.php @@ -232,8 +232,13 @@ public function postProcess() { CRM_Core_Error::statusBounce($e->getMessage()); } } - - if ($updateSubscription) { + if (is_a($updateSubscription, 'CRM_Core_Error')) { + CRM_Core_Error::displaySessionError($updateSubscription); + $status = ts('Could not update the Recurring contribution details'); + $msgTitle = ts('Update Error'); + $msgType = 'error'; + } + elseif ($updateSubscription) { // Handle custom data $params['custom'] = CRM_Core_BAO_CustomField::postProcess($params, $this->contributionRecurID, 'ContributionRecur'); // save the changes