CRM-16189, unset revenue recognition date from $params if contribution is associated...
authorPradeep Nayak <pradpnayak@gmail.com>
Tue, 9 Aug 2016 11:51:44 +0000 (17:21 +0530)
committerPradeep Nayak <pradpnayak@gmail.com>
Mon, 29 Aug 2016 13:20:32 +0000 (18:50 +0530)
----------------------------------------
* CRM-16189: Improve support for Accrual Method bookkeeping
  https://issues.civicrm.org/jira/browse/CRM-16189

CRM/Contribute/BAO/Contribution.php

index a8223d8089fcbc4ae8b06f96b0402ebbf2e47f19..eff6ea3b0c6e13064b01212ff17b60c2154670e5 100644 (file)
@@ -188,6 +188,11 @@ class CRM_Contribute_BAO_Contribution extends CRM_Contribute_DAO_Contribution {
 
     // CRM-16189
     CRM_Financial_BAO_FinancialAccount::checkFinancialTypeHasDeferred($params, $contributionID);
+    if ($contributionID && !empty($params['revenue_recognition_date'])
+      && !self::allowUpdateRevenueRecognitionDate($contributionID)
+    ) {
+      unset($params['revenue_recognition_date']);
+    }
 
     if (!isset($params['tax_amount']) && $setPrevContribution && (isset($params['total_amount']) || isset
       ($params['financial_type_id']))) {