X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=api%2Fv3%2FContribution.php;h=0b5b5acc2b164a06082acf14b132d08ec3097846;hb=f2fdb1887151740f55cac06e584ca00b2b407ed6;hp=c1b967838094cf467096623478db35058cf8eddd;hpb=bcf93bcebe88c785f36b59d1557b353c37bb9f1d;p=civicrm-core.git diff --git a/api/v3/Contribution.php b/api/v3/Contribution.php index c1b9678380..0b5b5acc2b 100644 --- a/api/v3/Contribution.php +++ b/api/v3/Contribution.php @@ -384,6 +384,9 @@ function civicrm_api3_contribution_completetransaction(&$params) { if(!$contribution->loadRelatedObjects($input, $ids, FALSE, TRUE)){ throw new API_Exception('failed to load related objects'); } + elseif ($contribution->contribution_status_id == CRM_Core_OptionGroup::getValue('contribution_status', 'Completed', 'name')) { + throw new API_Exception(ts('Contribution already completed')); + } $objects = $contribution->_relatedObjects; $objects['contribution'] = &$contribution; $input['component'] = $contribution->_component; @@ -403,6 +406,9 @@ function civicrm_api3_contribution_completetransaction(&$params) { } } +/** + * @param $params + */ function _civicrm_api3_contribution_completetransaction(&$params) { $params['id'] = array( 'title' => 'Contribution ID',