diff --git a/api/v3/TwingleDonation/Submit.php b/api/v3/TwingleDonation/Submit.php index c961cdb..74204bd 100644 --- a/api/v3/TwingleDonation/Submit.php +++ b/api/v3/TwingleDonation/Submit.php @@ -707,16 +707,8 @@ function civicrm_api3_twingle_donation_Submit($params) { $recurring_contribution_id = $contribution_id = ''; if (isset($contribution_recur['id'])) { $recurring_contribution_id = $contribution_recur['id']; - } elseif (!empty($mandate['id'])) { - // load mandate and see... - try { - $mandate_created = civicrm_api3('SepaMandate', 'getsingle', ['id' => $mandate['id']]); - if ($mandate_created['entity_table'] == 'civicrm_contribution_recur') { - $recurring_contribution_id = $mandate['entity_id']; - } - } catch(CiviCRM_API3_Exception $ex) { - Civi::log()->warning("Couldn't load SepaMandate with id '{$mandate['id']}'."); - } + } elseif (!empty($result_values['sepa_mandate']['entity_id'])) { + $recurring_contribution_id = (int) $result_values['sepa_mandate']['entity_id']; } if (isset($contribution['id'])) { $contribution_id = $contribution['id']; @@ -734,7 +726,7 @@ function civicrm_api3_twingle_donation_Submit($params) { // refresh membership data $result_values['membership'] = civicrm_api3('Membership', 'getsingle', ['id' => $membership['id']]); - } catch (Exception $ex) { + } catch (CiviCRM_API3_Exception $ex) { // TODO: more error handling? Civi::log()->debug("Twingle membership postprocessing call {$pp_entity}.{$pp_action} has failed: " . $ex->getMessage()); throw new Exception(